どのようにするために使用するインデックスマッチVBAを使用して2つのcriteriasのために
この記事では、VBAでINDEX&MATCH関数を使用して、VBAコードを使用してExcelの2つの基準に一致させる方法を学習します。
出力を取得するために、OFFSET関数とCOUNTA関数の組み合わせを使用してNameManagerリストを作成します。
例を挙げて理解しましょう:
-
学生の名前、件名、マークが記載された学生レポートカードがあります。
-
セルF2とG2に入力された学生名と科目のマークを調べたい
-
VBAコードを使用してマークを計算するために、OFFSET関数を使用して各カテゴリの名前付き範囲を作成しました。
-
CTRL + F3を押して名前マネージャーウィンドウを開きます(リストはすでに作成されています)
-
[数式]タブの[名前の貼り付け]機能の使用。セル内のすべての定義済み名範囲リストを取得します
-
[数式]タブの[名前の貼り付け]機能の使用。セル内のすべての定義済み名範囲リストを取得します
-
リストの貼り付けをクリック
VBエディターを起動するには、以下の手順に従う必要があります。[開発者]タブをクリックします。[コード]グループから[VisualBasic]を選択します
-
[挿入]をクリックしてから[モジュール]をクリックします
これにより、新しいモジュールが作成されます。
Module Sub IndexMatch()に次のコードを入力します
myName = [F2]
mySubject = [G2]
mark = Application.WorksheetFunction.Index([StMark]、_ Application.WorksheetFunction.Match(myName、([StName])、0)+ _ Application.WorksheetFunction.Match(mySubject、[StSubject]、0)-1)
[H2] =マーク終了サブ
-
Alt + F8ショートカットキーを押してマクロウィンドウを開き、マクロを選択します。
-
または、F5キーを押してVBA画面でコードを実行することもできます。
-
マクロを実行した後、セルH2に出力を取得します
これは、VBAのインデックス一致ワークシート関数を使用して結果を取得する方法です。