エクセルの学校


[[20080524175653]] 『VLOOKUP関数の検索範囲の指定のやり方』(Excel:2000 OS:2000) >>BOT

[ 初めての方へ | 一覧(最新更新順) |

|
| 全文検索 | 過去ログ | HOME ]

 

『VLOOKUP関数の検索範囲の指定のやり方』(Excel:2000 OS:2000)
 VLOOKUP関数で検索範囲を切換えて使う場合に
 =VLOOKUP(B3,indirect(B2),2,false)の様に書き、B2の値により検索範囲を切換える
 事が出来るとされていますが、例として書き込んだ式は同一シートに検索範囲がある場合
で、検索範囲が別のシートにある場合には、どのように書き込むのでしょうか?
 また、範囲名を付けておかないといけないのでしょうか?
 宜しくお願い致します。


 >検索範囲が別のシートにある場合には、どのように書き込むのでしょうか?

 Sheet1のB1セル =VLOOKUP(B3,INDIRECT(B2),2,FALSE)

 Sheet1          Sheet2のテーブル
 行   ______B______     行   __A__  _B__  
  1            2000        1   Excel  2000  
  2   Sheet2!a1:b10        2                
  3   Excel                3                

 (半平太)

 半平太さん、有難う御座いました。
 検索範囲を別シートにするやり方判りました。
 しかし、頭に入るまでには、チョッと時間がかかりますね。コンガラカッテしまいます。


 一度に完成させようとするから、
 難しく感じるのではないでしょうか。

 検索範囲が別のシートにある場合のVLOOKUP関数の式は
 どの様に書くか分かりますか?
 例えば、同じシート(Sheet1)に検索値が有る場合
 Sheet1	[B]	[C]	[D]	[E]
[1]	2000		Excel	2000
[2]				
[3]	Excel			
[4]							
 B1セルには
=VLOOKUP(B3,D1:E10,2,FALSE)
 の式を入れますよね。

 この時の、D1:E10の範囲が他のシートに有るのですから
 この部分を切り取って、Sheet2のA1セルから貼り付けます。
 すると、B1セルの式は
=VLOOKUP(B3,Sheet2!A1:B10,2,FALSE)
 に変わります。
(もちろん、直接シート間参照の式を作っても良いですよ。
 その場合は↓からが本題。)

 この時の式内にある「Sheet2!A1:B10」を
 セルに入力した値に変えたいのですから
 この部分をB2セルに書きだし その変わり、INDIRECT(B2)を入れます。
=VLOOKUP(B3,INDIRECT(B2),2,FALSE)
            ~~~~~~~~~~~~この部分がB2に書き出した「Sheet2!A1:B10」
 そしたら、半平太さんが書かれた状態と同じに成りますよね。

 (HANA)


コメント:

[ 一覧(最新更新順) |

]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.