- ベストアンサー
VLOOKUP関数の範囲名
VLOOKUP(検索値,範囲,列番号) の範囲のところに 参照範囲を定義した「名前」を入力する場合がありますが、 VLOOKUP(A1,B1:E4,2)→VLOOKUP(A1,LIST,2) この時、例えば A3に「LIST」と入力して VLOOKUP(A1,A3,2)としてもエラーとなってしまいます。 何か良い方法はありませんか?
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
> A3に「LIST」と入力して > VLOOKUP(A1,A3,2)としてもエラーとなってしまいます。 =vlookup(A1, indirect(A3), 2) と書いて下さい。
その他の回答 (3)
- imogasi
- ベストアンサー率27% (4737/17069)
A3にLISTと入れるのはおかしいです。 LISTは(手)操作で範囲を定義しないといけません 。メニュの挿入-名前-定義でやるものです。 関数式で、LISTに(例えば)A1:C8を定義することは出来ないと思います。 やや質問者のアイデアを伺わせるものにINDIRECT 関数がありますが、セルを指定してその指定したセル値を使うものですが、セルを指定してセルに入っている文字列を通して、その文字列が意味する中身を使うのは出来ません。 VBAでも出来るケースと出来ないケースがあって、できたら良いなと思うケースがあります。 Sub test02() Worksheets("sheet2").Select a = "A1" MsgBox Range(a) End Sub は可能な例。 Sub test02() Worksheets("sheet2").Select ActiveWorkbook.Names.Add Name:="hani", RefersToR1C1:="=Sheet2!R1C1:R5C3" Application.Goto Reference:="hani" With Selection .Interior.ColorIndex = 8 End With End Sub 範囲を定義してそれを使う例。
お礼
返信ありがとうございます。 質問の言葉が足りなくて申し訳ありません。 下記♯1の回答でOKでした。
- wnm
- ベストアンサー率48% (23/47)
ANo.#2の回答を撤回します。 勉強不足でした。ごめんなさい。
- wnm
- ベストアンサー率48% (23/47)
名前とは、セルの塊(範囲)につける別名の事です。 また、名前は参照する事が出来なかったはずです。 そのためのエラーと考えられます。
お礼
返信ありがとうございます。 下記♯1の回答でOKでした。
お礼
素敵です。 言葉の足りない説明だったにも関わらず、 満点な回答でした。 どうもありがとうございます。 それにしても、okwebの回答はこんなに早いんですね。