UDFを作成する方法を既に知っているので(そして、Excelにそれらを適用しようとしたことを願っています)、ユーザー定義の関数が機能していない場合に何ができるかをもう少し深く掘り下げてみましょう。
カスタム関数を作成するときにいくつかの問題を解決するには、デバッグを実行する必要がある可能性が高いです。次に、関数が正しく機能していることを確認できます。
次のデバッグテクニックを探ります。
カスタム関数を作成すると、間違いを犯す可能性が常にあります。通常、カスタム関数は非常に複雑です。そして、彼らは常にすぐに正しく働き始めるとは限りません。式は、誤った結果または#valueを返す場合があります!エラー。標準のExcel関数とは異なり、他のメッセージは表示されません。
各ステートメントの仕組みを確認するために、カスタム関数を段階的に段階的に進める方法はありますか?もちろん!これにはデバッグが使用されます。
カスタム関数をデバッグする方法をいくつか提供して、自分に合った機能を選択できるようにします。
例として、指定された値の範囲の最大数を計算する以前の記事の1つから、カスタム関数を使用します。
関数引数は、数値が書かれているセルの範囲と、値の上限と下限です。
MSGBOX機能を重要な場所に配置します
計算の実行を監視するために、正しい場所の画面上の最も重要な変数の値を表示できます。これは、ポップアップダイアログボックスを使用して実行できます。
MSGBoxは、ユーザーに何らかのメッセージを表示するために使用できるダイアログボックスです。
MSGBOXの構文は、他のVBA関数に似ています。
msgbox(prompt [、buttons] [、title] [、helpfile、context]))プロンプトは必要な引数です。ダイアログボックスに表示されるメッセージが含まれています。また、個々の変数の値を表示するためにも使用できます。
他のすべての引数はオプションです。
[ボタン] - どのボタンとアイコンがmsgboxに表示されるかを決定します。たとえば、オプションvbokonlyを使用すると、 [OK]ボタンのみが表示されます。この引数を見逃したとしても、このボタンはデフォルトで使用されます。
[タイトル] - ここで、メッセージボックスのタイトルを指定できます。
単語から切り替えて練習し、デバッグを開始しましょう。メッセージを表示するには、次の行をCase Else Operatorの前にGetMaxBetheeineユーザー定義関数のコードに追加します。
これが結果に得られるものです:
ダイアログボックスでVMAX変数を使用して、どの数値が選択の基準を満たしているかを確認して、それらの最大を選択できるようにします。タイトルバーの「count-」&iの式を使用すると、最大値を決定するために既に選択した数字の数を示します。カウンターは、新しい値ごとに増加します。
UDFセットを設定したら、以下の式を日付範囲に適用します。
= GetMaxBetween (A1:A6,10,50)
Enterボタンを押すと、以下のスクリーンショットのようにメッセージが表示されます。
これは、基準を満たしている範囲A1:A6の最初の数値です。10を超えて50未満です。
[OK]をクリックすると、数字14で2番目のメッセージが表示されます。残りの数値は選択基準と一致しません。したがって、関数は2つの値のうち最大の17を終了して返します。
MSGBox関数は、個々の変数の値がどのように変化するかを制御するために、カスタム関数の最も重要な場所で使用できます。メッセージボックスは、大きな機能と多くの計算がある場合に非常に便利です。この場合、エラーが発生するコードのどの部分で発生するかを簡単に判断できます。
停止ポイントを決定し、段階的に実行します
コードの実行が停止する関数のコードにブレークポイントを追加できます。したがって、計算プロセスに段階的に従うことができます。そうすることで、変数の値がどのように変化するかを見ることができます。
ブレークポイントを追加するには、一時停止を選択したステートメントを含むラインにカーソルを配置します。次に、右クリックして[デバッグ] - > [ブレークポイントを切り替える]またはF9を押します。また、関数コードの左側にある垂直灰色の領域にある目的の場所をクリックすることもできます。
以下のスクリーンショットにあるように、赤い円が表示されます。計算が停止されるコードラインは赤で強調表示されます。
これで、機能が実行されているときにVBAエディターウィンドウが開きます。カーソルは、停止した時点に配置されます。
マウスカーソルを関数コードの変数のいずれかにホバリングすると、現在の値を確認できます。
F5を押して計算を続行します。
注記。ブレークポイントの後、計算の進行の追跡を段階的に追跡することができます。 F8ボタンを押すと、VBAコードの次の1行のみが実行されます。矢印のある黄色の線も、最後に実行されたコード位置に移動します。
関数の実行が再び一時停止されるため、マウスカーソルを使用して関数のすべての変数の現在の値を表示できます。
F8の次のプレスは、私たちを一歩前進させます。したがって、計算の終了までF8を押すことができます。または、 F5を押して、次のブレークポイントまで計算を続行します。
エラーが発生した場合、エラーが発生したコードのポイントでカーソルが停止します。また、ポップアップエラーメッセージも表示されます。これにより、問題の原因を簡単に判断できます。
指定したブレークポイントは、ファイルを閉じるまで適用されます。再開するときは、再度設定する必要があります。最も便利な方法ではありません、あなたは思いませんか?
ただし、この問題は解決できます。必要なポイントで停止ステートメントを関数コードに挿入すると、ブレークポイントを使用するときと同じようにプログラムの実行を停止できます。
VBAがSTOPステートメントに遭遇すると、プログラムの実行を停止し、アクションを待ちます。変数の値を確認し、 F5を押して続行します。
または、 F8を押して、上記のように関数を段階的に満たします。
STOPステートメントはプログラムの一部であるため、ブレークポイントの場合のように削除されません。デバッグが完了したら、自分で削除してください。または、単一の引用( ')で前にコメントに変えます。
debug.printオペレーターを使用したデバッグ
debug.printを正しい場所にfunctionコードに配置できます。これは、周期的に変化する変数の値をチェックするのに役立ちます。
以下のスクリーンショットで、debug.printのパフォーマンスの例を見ることができます。
ステートメントdebug.print i、vmaxは値とその順序数を印刷します。
即時のウィンドウには、選択した範囲から2つの数値(17と14)が表示されます。これは、設定された制限に対応し、そのうち最大値が選択されます。数字1と2は、関数が数値が選択された2サイクルを完了したことを意味します。 MSGBoxで以前に行ったように、最も重要な変数の値が表示されます。しかし、これは機能を止めませんでした。
手順から関数を呼び出します
ワークシートのセルからではなく、手順からユーザー定義の関数を呼び出すことができます。この場合、すべてのエラーがVisual Basic Editorウィンドウに表示されます。
手順からユーザー定義の関数getMaxbergeenを呼び出す方法は次のとおりです。
カーソルをコードのどこにでも配置し、 F5を押します。関数にエラーがない場合は、計算結果のあるポップアップウィンドウが表示されます。
エラーの場合、VBAエディターに対応するメッセージが表示されます。計算は停止され、エラーが発生したコードラインが黄色で強調表示されます。エラーが発生した場所と理由を簡単に識別できます。
それだけです。これで、独自のアドインを作成し、Excelに追加して、UDFを使用できます。より多くのUDFを使用する場合は、VBAエディターのアドインモジュールにコードを記述して保存してください。
それは今日のためです。カスタム関数をデバッグするさまざまな方法をカバーし、ワークブックで使用する方法を学びました。これらのガイドラインが役立つことを本当に願っています。ご質問がある場合は、この記事にコメントを書いてください。
以上がExcelでカスタム関数をデバッグする方法を学びますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

この記事では、単一および依存リストを含むデータ検証を使用して、Excelでドロップダウンリストを作成する方法について説明します。 プロセスの詳細、一般的なシナリオのソリューションを提供し、データ入力制限やPEなどの制限について説明します

この記事では、Excelピボットテーブルとチャートのタイムラインを作成するプロセスをガイドし、それを使用してダイナミックで魅力的な方法でデータと対話する方法を示します。 あなたはあなたのデータをピボで編成しています

この記事では、Sum関数、Autosum機能、および特定のセルを合計する方法を使用して、Excelの列を合計する方法について説明します。

記事では、テーブルの作成、フォーマット、およびカスタマイズでExcelで説明し、データ分析のために合計、平均、ピボットアブルなどの関数を使用しています。

Excelは、組み込みの「XMLデータインポート」関数を使用してXMLデータをインポートできます。 インポートの成功は、XML構造に大きく依存します。よく構成されたファイルは簡単にインポートされますが、複雑なファイルは手動マッピングが必要になる場合があります。 ベストプラクティスにはXMLが含まれます

記事では、平均関数を使用してExcelの平均の計算について説明します。主な問題は、この関数をさまざまなデータセットに効率的に使用する方法です。(158文字)

この記事では、データの準備、チャート挿入、および強化された視覚分析のためのパーソナライズオプションに焦点を当てて、Excelでパイチャートを作成およびカスタマイズする手順を詳述します。

記事では、データ検証を使用してExcelのドロップダウンリストの作成、編集、削除について説明します。主な問題:ドロップダウンリストを効果的に管理する方法。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

ドリームウィーバー CS6
ビジュアル Web 開発ツール

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

SAP NetWeaver Server Adapter for Eclipse
Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

mPDF
mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター
