ワークブックの他の場所にある動的な名前付き範囲の一部に対応する列見出しを持つテーブルが Excel にあります。たとえば、「10」、「20」などの列見出しと、「ExampleRange10」、「ExampleRange2」などの動的な名前付き範囲があります。連結して ExampleRange10 を参照する VLookup 式を入力したいと考えています。文字列「ExampleRange」と列見出し「10」。これにより、各列の数式に「ExampleRange10」、「ExampleRange20」などを手動で入力する代わりに、テーブル内のすべての列に数式を単純に拡張できます。
私は INDIRECT 関数を認識しており、過去に名前付き範囲で正常に使用しましたが、この場合、動的名前付き範囲では機能していないようです。これは、動的な名前付き範囲が Excel によって定義される方法と関係があるニュアンスであると推測しています (数式バーの左側にある名前付き範囲のドロップダウンには表示されず、VBA にはいくつかの興味深いプロパティがあります)。 、 例えば)。INDIRECT 数式を動的な名前付き範囲と組み合わせて使用する方法はありますか、またはこの問題を解決する別の方法はありますか?
編集:使用されている正確な式は次のとおりです。
これが主な数式です。=VLOOKUP(B2,INDIRECT("ExampleRange"&C1),2,FALSE)
ここで、C1 には「10」が含まれ、「ExampleRange10」と呼ばれる動的な名前付き範囲の数式は次のとおり=OFFSET(Sheet1!$F$2,0,0,COUNTA(Sheet1!$F$2:$F$25),2)
です。メインの数式は "#REF!" を返しますが、動的な名前付き範囲の数式を削除し、単に "ExampleRange10" を静的な範囲として定義すると正しく機能します。