Excel (VBA)

Excel VBAに関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(指定なし : 指定なし)
VLOOKUP上手くゆかない
投稿日時: 24/05/21 11:56:17
投稿者: marutiezu

VLOOKUPを用いて表を作成したがうまく機能しない何処が誤っているのか教えてください。
【表1】 
  
   セルA1に「3」と入れたら、【表2】から、セルB1に「佐藤太郎」と答える数式を作る。
 
【表2】
   
   せるL4に「1」、セルM4に 「佐藤太郎」と作成済
 
 
 〇上記のため セルB1に
  
  =VLOOKUP(A1,L4:M12,1,FALSE)
  と作成したが上手くゆきません、何処が誤っているのか教えてください。
 
 
 
 
 
 
 

回答
投稿日時: 24/05/21 12:33:39
投稿者: Suzu

引用:
【表1】 
  
   セルA1に「」と入れたら、【表2】から、セルB1に「佐藤太郎」と答える数式を作る。
 
【表2】
   
   せるL4に「」、セルM4に 「佐藤太郎」と作成済
 
 
 〇上記のため セルB1に
  
  =VLOOKUP(A1,L4:M12,1,FALSE)

 
 
1. 「」を入れても、元表 の値は 「」なので合致しない。
 
2. 「」、「」共に 全角
  VLookUp では、半角全角は区別される。
  表の L列 の 値が 本当は、半角 で、A1 に入れるのが全角 であれば 合致する事はない。
 
3. 数式 の 第三引数 は、
    第二引数に指定した範囲のうち、何列目の値を返すか を指定する。
   今回の場合、それに、「1」を指定していますから 返す列は L列 の値
   佐藤太郎が 欲しい のであれば、「2」 を 指定する。
 
4. 「上手くゆきません」では 説明不足です。
    エラーになるのであれば、「【#N/A】となってしまう」 の様な、エラー内容
    「求める値ではなく、別の値が表示される」
    の様な説明を心掛ける様にしましょう。

回答
投稿日時: 24/05/21 19:46:59
投稿者: WinArrow

今回の「うまくいかない」の原因ではありませんが、
「うまくいかない」が解消しても、次の段階で「うまくいかない」となる可能性があるかも?
想定で、コメントしておきます。
 
 
>=VLOOKUP(A1,L4:M12,1,FALSE)
この数式の間違いは既にご指摘(第3引数を「2」にする)がありますが、
 
この数式をB列の下方向に複写することを前提としているならば、
第2引数を絶対参照にしておく必要があります。
 
 
 

回答
投稿日時: 24/06/01 18:20:17
投稿者: WinArrow

質問の仕方として
 
>上手くゆきません
ではなく、
 
どのような結果になるのかを説明してください。
 
あんたが望んだ回答を得るためには、
症状をキチンと説明すべきです。
 
質問だけして、放置しないでください

投稿日時: 24/06/01 20:16:13
投稿者: marutiezu

ご三方、教えていただき有難うございました。
まだ私のところでいろいろやってみましたがこの数式完成していません、
今少し時間かかりそうです。
回答いただいてから日数たってしまいましたが、他の事に時間を取られ、作成を一時延期しています、今後ともよろしくお願いいたします。

回答
投稿日時: 24/06/02 09:34:45
投稿者: WinArrow

marutiezu さんの引用:

ご三方、教えていただき有難うございました。
まだ私のところでいろいろやってみましたがこの数式完成していません、
今少し時間かかりそうです。
回答いただいてから日数たってしまいましたが、他の事に時間を取られ、作成を一時延期しています、今後ともよろしくお願いいたします。

 
質問者さんの都合もありますから、延期するのは仕方がないとして、
「うまくいかない」
の症状を説明して貰えませんか?
 

回答
投稿日時: 24/06/02 13:03:22
投稿者: simple

既に指摘がありましたとおりかと思います。
誤 =VLOOKUP(A1,L4:M12,1,FALSE)
正 =VLOOKUP(A1,L4:M12,2,FALSE)
   =VLOOKUP(A1,$L$4:$M$12,2,FALSE)
ではないですか?
VLOOKUP関数のヘルプ、ネット上のサイトなどで、引数の意味を良く確認してください。
比較的良く出てくる関数ですから、きっちり理解する必要があります。
 
なお、ここはVBAの質疑をするところです。
数式の話ですから「Excel(一般機能)」で質問するようにしてください。

回答
投稿日時: 24/06/02 13:12:28
投稿者: WinArrow

>いろいろやってみました
 
➢「いろいろ」では、伝わりません。
 
最初の説明の範囲内という前提で、現象を推測してみます

引用:

【表1】 
   セルA1に「3」と入れたら、【表2】から、セルB1に「佐藤太郎」と答える数式を作る。
【表2】
   せるL4に「1」、セルM4に 「佐藤太郎」と作成済

 
※説明が不十分というより、的を得ていない。
 
症状は、「#N/A!」ではないかと推察します。
「#N/A!」の意味は、「検索キーに該当する参照キーが存在しない」です。
 考えっれる原因は、次の通り
 
原因1:検索キー「3」に対して、表2の参照キーが「1」
 
原因2:検索キー、参照キーのデータ型が一致しない
   (検索キーが数値、参照キーが文字列)
   (検索キーが文字列、参照キーが数値)
 
以上の原因を参考にして、実態を検証してみてください。
 
 
症状が「3」が表示される
表2は、説明不足あり、実際は、1件だけでなく、9件存在するかもしれない・・・
=VLOOKUP(A1,L4:M12,1,FALSE)
の第3引数を「2」にすれば解決する
 

投稿日時: 24/06/07 17:19:41
投稿者: marutiezu

大変お騒がせしました、この投稿の結論は、Excelそのものの不具合によるものでした。
本日ようやくそのことに気が付き、改めてExcelを新しく立ち上げたら今までの数式でうまく作動しました。
ご協力いただきました皆様に、改めて御礼申し上げます。