初心者の質問で、わかりにくくてごめんなさい。
LOOKUPみたいに、参照する表から値をひっぱって
くる様にしたいのですが、参照する表の値の一部にその文字があったらそれをひっぱってくる様にするにはどうしたらよいのでしょうか?

例:参照の表のセル→ABC502 となっていて、ひっぱってくるセルに「502」と入力したらその横に「ABC502」と表示したいのです。

LOOKUPだと、○○の時は××という風に、まったく同じ値じゃないとだめですよね?

質問自体がわかりにくくて大変申し訳ないのですが、教えて下さい!!

このQ&Aに関連する最新のQ&A

A 回答 (4件)

comvさんの補足です。


B列に参照値が複数入っているときは、C列の数式セルをドラグして、コピーするときに、A列の参照の表が、ずれて来ます。これを防ぐためには、絶対指定をしなくてはなりません。

関数ウィザードを使って絶対指定するときは、F1キーを押してください。

修正した式です。
=IF(COUNTIF($A$1:$A$5,"*"&B1&"*"),VLOOKUP("*"&B1&"*",$A$1:$A$5,1,0),"なし")

絶対指定は$マークを付けます。
"*"&B1&"*"は、セルB1の前後に任意の文字列も含みます。&は結合記号です。*は任意の文字列です。

すでに、ご存知とは思いますが、老婆心ながら(^^;
    • good
    • 0

FIND関数を使ってみてはいかがでしょうか。

LOOKUP関数とかIF関数にネストする場合にはやや制限があるかもしれませんが、データベース関数などよりは使いやすいように思います。
    • good
    • 0

DGet関数を使うとか。


A列にデータが入ってるものとします
A1に ID と入力してA2以下にデータがあって、その中にABC502ってデータも含まれているものとします。

まず、E1に ID と入力 E2に *502* って入力します
で、適当なセルに
=DGet(A:A,1,E1:E2)
って入れたら、ABC502(もしくは"502"を含む最初のデータ)が取り出せるはずです。

余分なセルを使いたくないなら、VBAでプログラミングしてもいいかも。
参考URLに、以前私が作った自作関数が載ってます。
こっちについてもサポートしますんで、質問等あったら補足欄にお書きください。

参考URL:http://oshiete1.goo.ne.jp/kotaeru.php3?q=35559
    • good
    • 0
この回答へのお礼

回答ありがとうございます!!

DGet関数って知りませんでした。

自作の関数があるってすごいですね!!

参考URL、見させていただきます。

また何かあればよろしくお願いします!

お礼日時:2001/07/10 01:01

こんばんは!


1例を

   A   B   C
1 AAA501 502  数式
2 BBB505
3 CCC555
4 ABC502
5 ABB503

B1が参照値の入力セルとして
C1の数式 =VLOOKUP("*"&B1,A1:A5,1,0)

ただし通常のVLOOKUPと同様に
 ・存在しない場合、#N/A エラーになります。
 ・条件に合うセルが複数ある場合、上行が優先となります。

エラーを避ける為には予め存在をチェックする数式が必要です。

例)
=IF(COUNTIF(A1:A5,"*"&B1),VLOOKUP("*"&B1,A1:A5,1,0),"なし")
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング

おすすめ情報