[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『VLOOKUP関数で複数のデータを検出したい』(masabou5)
A B C D 1 1月1日 元旦 5月5日 子供誕生日 2 3月21日 春分の日 12月23日 結婚記念日 3 5月5日 子供の日 4 11月3日 文化の日 5 12月23日 天皇誕生日
上記のような表があり、VLOOKUP関数で検索して、 あるセルに 5月5日には、「子供の日・子供誕生日」、 12月23日には、「天皇誕生日・結婚記念日」というように表示させたいのですが、 どのような式を作ればいいでしようか? =VLOOKUP(C4,A1:B5,2,0)&"・"&VLOOKUP(C4,D1:E5,2,0) と言うような式を作ってみましたが、#NAが出てダメでした。 お教え下さい。よろしくお願いします。
=VLOOKUP(C4,A1:B5,2,0)&"・"&VLOOKUP(C4,D1:E5,2,0) でだめでしたか? A B C D E 1 1月1日 元旦 5月5日 子供誕生日 2 3月21日 春分の日 12月23日 結婚記念日 3 5月5日 子供の日 4 11月3日 文化の日 5月5日 5 12月23日 天皇誕生日
こちらでは、、「子供の日・子供誕生日」と表示されてますよ。 関数は苦手だから理由が分からない。 (SHIOJII)
日付は、シリアル値で表示で月日になってますか? どれかが、文字列になっているのでは?カンですが・・・ (SHIOJII)
アラー、ごめんなさい。 二つの範囲に、検索値があれば、OKなのですが、 片方しかない場合、例えば5月5日の子供の誕生日がない場合に#NAとなります。 この場合、5月5日は、「子供の日」だけを表示したいのです。 よろしくお願いします。(masabou5)
関数は苦手ですが、エラーかどうかで判断すればどうでしょう。 =IF(ISERROR(VLOOKUP(C4,A1:B5,2,0)),"",VLOOKUP(C4,A1:B5,2,0))&"・"&IF(ISERROR(VLOOKUP(C4,D1:E5,2,0)),"",VLOOKUP(C4,D1:E5,2,0)) 「・」は、どうしたらいいのかな? (SHIOJII)
SHIOJIIさん、ありがとうございました。 とりあえず出来ましたが、おっしゃるように「・」はどうすればいいでしょうね?(masabou5)
CとD列を使うことが何となく変に思えるのですが。 AとB列だけではだめなのでしょうか? (横ヤリ)
AとB列だけでもいいのですが、結局VLOOKUPは最初の検索値が出てくると、 そこでストップしてしまうので、苦肉の策で二つに分けたのですが・・・(masabou5)
下から失礼します。。。 (横ヤリ)さんがおっしゃっているのは、こんな感じのことだと思います。 A B C 1 1月1日 元旦 2 3月21日 春分の日 3 5月5日 子供の日・子供誕生日 4 11月3日 文化の日 5月5日 5 12月23日 天皇誕生日・結婚記念日 と、はじめから B列 に、入れ込むことは出来ないのでしょうか? (キリキ)(〃⌒o⌒)b
キリキさん、ありがとうございました。 おっしゃる通りですね。どうも頭が固くて、もう少し柔軟に考えなければいけませんね。 こうすれば変なことに悩まなくても済みそうです。(masabou5)
A B C D E 1 1月1日 元旦 5月5日 子供誕生日 2 3月21日 春分の日 11月10日 妻誕生日 3 5月5日 子供の日 12月23日 結婚記念日 4 11月3日 文化の日 5月5日 子供の日・子供誕生日 5 12月23日 天皇誕生日 11月10日 妻誕生日 6 12月23日 天皇誕生日・結婚記念日 7 11月3日 文化の日
D4=IF(COUNTIF($A$1:$A$5,C4),VLOOKUP(C4,$A$1:$B$5,2,0),"")&IF(COUNTIF($D$1:$D$3,C4) ,IF(COUNTIF($A$1:$A$5,C4),"・","")&VLOOKUP(C4,$D$1:$E$3,2,0),"")
◆表示させる箇所(C4)が、きゅうくつな箇所ですね。 (Maron)
Maronさん、 なるほど、Countifを使うのですね、思いつきませんでした。 どうも頭が堅くなっていて、柔軟な発想に欠けているようです。 でも、これでほぼ初期の目的が達せられるようです。 ありがとうございました。(masabou5)
◆蛇足ですが、MaronはCOUNTIF関数を使った回答をしましたが、既に回答されている、 ISERR,ISNA関数でも、よいと思います。 (Maron)
Maronさん、ありがとうございました。 ISNAでもいいですね、ただ、検索値が2個以上あった場合は、Countifなのでしょうね。 いずれにしても、VLOOKUPで検索値が複数あった場合の処理が出来るようになりました。(masabou5)
A B C D E 1 1月1日 元旦 5月5日 子供誕生日 2 3月21日 春分の日 5月10日 結婚記念日 3 5月5日 子供の日 4 11月3日 文化の日 5月10日 結婚記念日 5 12月23日 天皇誕生
D4にこのようにする方法もよいかもしれません。
=SUBSTITUTE( IF(ISNA(MATCH(C4,A1:A5,)),"","・"&VLOOKUP(C4,A1:B5,2,))& IF(ISNA(MATCH(C4,D1:D2,)),"","・"&VLOOKUP(C4,D1:E2,2,)), "・",,1)
>ISERR,ISNA関数でも、よいと思います。 **** 対象列範囲に値が存在するかどうかを調べるのは、=COUNTIF() も 利用できますが、調べるものが、列内に存在するするケースが多い場合には、 =VLOOKUP()や=MATCH()と較べると、全件参照となりますので、どうでしょう? (LOOKUP)
LOOKUPさん、ありがとうございました。 なるほどとうなされます、いろいろな使い方があるものですね。 とても参考になりました。(masabou5)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.