ヒント、コツ、および回答

「マクロの作成」トピックについては、次の記事を参照してください。

記事のタイトル(太字で表示)をクリックして、関連する記事を表示します。

link:/ excel-Assigning_a_Macro_to_a_Keyboard_Combination [マクロをキーボードの組み合わせに割り当てる]

マクロは、Excelに配置したデータで実行できることを拡張するための優れた方法です。このヒントで説明するように、これらのマクロをショートカットキーに割り当てることで、これらのマクロをさらに便利にすることができます。

link:/ excel-Automatically_Changing_References_to_VBA_Libraries [VBAライブラリへの参照を自動的に変更する]

VBAライブラリは、マクロにいくつかの関数を提供するために使用されます。これらのライブラリは、使用しているExcelのバージョンに関連付けられていることが多いため、異なるバージョンのExcelで同じマクロを実行することが困難になる可能性があります。このヒントでは、ブックで使用されているVBAライブラリ参照に関連する問題を回避する方法についていくつかのアイデアを提供します。

link:/ excel-Continuing_Macro_Lines [Continuing Macro Lines]

マクロコマンドラインが非常に長くなる場合があります。これは、今から1か月ほどで見たときに理解しにくくなる可能性があります。コマンドラインを、理解と文書化が容易な個々の行に分割することをお勧めします。

link:/ excel-Copying_Worksheets_in_a_Macro [マクロでのワークシートのコピー]

ワークシート(1つまたは複数)のコピーは手動で簡単に行えます。よく知られていないのは、このヒントで説明されているように、マクロでコピーを作成することさえ簡単であるということです。

link:/ excel-Deleting_Macros_from_within_a_Macro [マクロ内からのマクロの削除]

マクロは非常に便利ですが、実際には別のマクロ内からマクロを削除したい場合があります。このヒントが指摘しているように、これは思ったほど簡単ではありません。

link:/ excel-Error_Using_ATAFunction_in_Macro [マクロでのATAN2関数の使用エラー]

Excelでは、マクロ内からワークシート関数を使用できます。これは、特に数学関数を実行しようとしているときに役立ちます。ただし、使用法でエラーが発生した場合は、その理由が不明な場合があります。

link:/ excel-Exiting_a_For_Next_Loop_Early [Exiting a For …​ Next Loop Early]

マクロでFor …​ Nextループを使用する場合は、ループから早くジャンプする方法を用意してください。このようにして、ループ内でマクロが費やす時間を制限し、パフォーマンスを高速化できます。

link:/ excel-Hiding_Entries_in_an_InputBox [InputBoxのエントリを非表示にする]

ユーザーにExcelでのパスワードの入力を要求すると、ワークシートのセキュリティが向上し、誰かが許可なくマクロを実行するのを防ぐことができます。このヒントでは、このタスクを実行する方法について説明します。

link:/ excel-Macro_Fails_after_AutoFilter [Macro Fails after AutoFilter]

他の人が使用する可能性のあるマクロを開発するときは、オートフィルターが有効になっている場合に正しく機能することを確認するために、マクロをテストすることをお勧めします。そうでない場合は、簡単な1行のコマンドでオートフィルターをオフにできます。

link:/ excel-Maximum_Length_Limit_for_a_Macro [マクロの最大長制限]

マクロを長くしすぎると、Excelがマクロの実行をまったく拒否する可能性があります。

このヒントでは、マクロの制限について説明し、制限を回避する方法についてのガイダンスを提供します。

link:/ excel-Offering_Options_in_a_Macro [マクロでのオプションの提供]

マクロ内でユーザー入力を取得すると役立つことがよくあります。いくつかのオプションを提示し、ユーザーの応答を取得する簡単な方法は次のとおりです。

link:/ excel-Official_Color_Names_in_VBA [VBAの公式​​カラー名]

マクロを作成するときは、ColorIndexプロパティとColorプロパティを使用して、セルの色を設定または決定できます。 Excelには、色を指定するために使用できる8つの定数が用意されていますが、これは色の操作方法の制限ではありません。このヒントでは、VBAマクロの色と色名に関する一般的なガイダンスを提供します。

link:/ excel-Opening_a_Workbook_but_Disabling_Macros [ブックを開くが、マクロを無効にする]

ブックを開いたり閉じたりすると自動的に実行されるマクロは非常に役立ちます。ただし、別のブックのマクロ内からブックを開いたり閉じたりする場合は、それらを実行したくない場合があります。このヒントでは、この方法でブックにアクセスするときに特定のマクロ(AutoClose)の実行を停止する方法について説明します。

link:/ excel-Recording_a_Macro [マクロの記録]

マクロを作成する最も一般的な方法の1つは、Excelのマクロレコーダーを使用することです。このヒントは、マクロレコーダーを使用してワークブック内で実行したアクションを記録するのがいかに簡単かを示しています。

link:/ excel-Retrieveing_Drive_Statistics [ドライブ統計の取得]

システム上のドライブに関する情報を収集する必要がありますか?このヒントに示すように、マクロを使用すると非常に簡単に実行できます。

link:/ excel-Selecting_a_Range_of_Cells_Relative_to_the_Current_Cell [現在のセルを基準にしたセルの範囲の選択]

マクロで情報を処理する場合、現在選択されているセルとは異なるセルを選択する必要があることがよくあります。マクロステートメントでオフセットを使用する方法がわかれば、簡単に実行できます。

link:/ excel-Selecting_Visible_Cells_in_a_Macro [マクロ内の可視セルの選択]

多くの場合、アクションを実行する前に、表示されているセルだけを選択する必要があります。マクロ内でこの特殊な選択を行う方法を知っておくと役に立ちます。

link:/ excel-Self-Deleting_Macros [Self-Deleting Macros]

マクロは非常に強力ですが、ユーザーが常に利用できるようにしたくない場合があります。日付に基づいて使用を制限する方法をいくつか紹介します。

link:/ excel-Specifying_Location_for_a_Message_Box [メッセージボックスの場所の指定]

マクロを作成するときは、画面上の特定の場所にメッセージボックスを配置することをお勧めします。これはExcelでは実行できませんが、問題を回避する方法はいくつかあります。

link:/ excel-Stepping_Through_a_Macro_with_a_Worksheet_Visible [ワークシートが表示されたマクロのステップスルー]

マクロを開発するときは、ワークシートで何が起こっているかを確認できるように、さまざまなコード行をステップ実行する必要があることがよくあります。

これは簡単です。必要なウィンドウを同時に画面に表示するだけです。

link:/ excel-Switching_Windows_in_a_Macro [マクロでのウィンドウの切り替え]

複数のブックを同時に開いている場合、Excelではそれらのブックを簡単に切り替えることができます。ただし、マクロ内での切り替え方法は少し複雑です。

link:/ excel-Telling_which_Worksheets_are_Selected [どのワークシートが選択されているかを伝える]

マクロが多数のワークシートの情報を処理する場合、実際に選択されているワークシートを把握するためにマクロが必要になる可能性があります。このヒントでは、マクロでその情報を判別する方法について説明します。

link:/ excel-Triggering_an_Event_when_a_Worksheet_is_Deactivate [ワークシートが非アクティブ化されたときにイベントをトリガーする]

ブックでマクロを使用する1つの方法は、特定のイベントが発生したときにマクロを自動的にトリガーすることです。ワークシートが非アクティブ化されたとき(フォーカスが失われたとき)に実行されるマクロをトリガーする方法は次のとおりです。

link:/ excel-Trouble_Recording_Paste_Special_Formula [Trouble Recording Paste Special Formula]

新しいバージョンのExcelにアップグレードすると、以前のバージョンでは問題がなかったマクロの記録で問題が発生する場合があります。この問題にはさまざまな理由が考えられますが、記録をバイパスしてマクロを最初から作成する方が簡単な場合もあります。

link:/ excel-Understanding_Macros [Understanding Macros]

マクロとは何ですか?これらが何であり、どのように使用するのか疑問に思ったことはありませんか?このヒントでは、マクロの使用目的、マクロのさまざまな作成方法、およびマクロの保存場所の基本について説明します。

link:/ excel-Understanding_the_For_Next_Structure [Understanding the For …​ Next Structure]

VBAの能力の一部は、コードの一部が実行されるタイミングと実行されないタイミングを制御できることです。これを行う主な方法は、For …​ Next構造を使用することです。

link:/ excel-Using_Macros_in_Protected_Workbooks [保護されたワークブックでのマクロの使用]

保護されたブックでのマクロの使用に問題がありますか?このヒントで説明されているように、原因(および解決策)はいくつも考えられます。

link:/ excel-Using_Named_Ranges_in_a_Macro [マクロでの名前付き範囲の使用]

名前付き範囲は、Excelが提供する優れた機能です。ブックであらゆる種類の名前付き範囲を定義できますが、マクロを作成するときにどのようにそれらにアクセスしますか?このヒントでは、これらの範囲にアクセスするためのさまざまな方法について説明します。

link:/ excel-Writing_a_Macro_from_Scratch [最初からマクロを書く]

マクロの記録は、マクロを使い始めるための優れたアプローチですが、ある時点で、最初からマクロを作成する必要があります。これがその方法です。

関連トピックについては、左側の列の上部にある「深く掘り下げる」を参照してください…​