- ベストアンサー
どのような関数を組み合わせたらできるでしょうか?
エクセルで例えば下記のような表があります CO 名字 名前 101 A B 102 C D 103 E F というような表がありその下に CO 名前 102 101 103 とCOがバラバラになっている表があるとして 上の表から名前を検索してなおかつ名字と名前を合体させる方方はあるのでしょうか? 教えて下さいお願いします。
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
VLOOKUPとCONCATENATEを組み合わせて使います。 (1)上の表全体を選択し名前を定義します。(表1)とする。 「挿入」→「名前」→「定義」で表全体を選択し"表1"とする。 (2)下の表がの102がA11としてB11の関数 =CONCATENATE(VLOOKUP(A11,表1,2,false),VLOOKUP(A11,表1,3,false)) で出来ると思います。別に(1)の名前の定義をしなくても(2)の表1の代わりに表の範囲を指定してもかまいません。私はこの方法が好きので…
その他の回答 (5)
- mu2011
- ベストアンサー率38% (1910/4994)
名前のセルに以下の関数を設定して、下方向にコピーして下さい。 =IF(A12<>"",VLOOKUP(A12,$A$2:$C$4,2,1)&VLOOKUP(A12,$A$2:$C$4,3,1),"") A12は仮セルで名前セルの左隣セルを示します。
- 10gate
- ベストアンサー率42% (50/117)
こんにちは。 vlookupと文字列の連結(&)を使えば可能です。 A8に検査値(下の102)、A1:C4が元の表の範囲とした場合の例です。 =VLOOKUP(A8,A1:C4,2,FALSE)&" "&VLOOKUP(A8,A1:C4,3,FALSE) 途中の&" "&は姓名の間に空白スペースを入れているだけですので不要なら単に&でOKです。 詳しくはvlookupのhelpをご覧下さい。
- fluffblob
- ベストアンサー率36% (14/38)
A B C 1 CO 名字 名前 2 101 あ い 3 102 う え 4 103 お か 5 6 102 7 101 8 103 となってるとして、こうやったらB6に「あ い」と入りました。 B6に: =LOOKUP(A6,A2:A4,B2:B4)&" "&LOOKUP(A6,A2:A4,C2:C4) A2:A6に名字の範囲、 B2:B4に名前の範囲をいれます。 $A$2:$A$6というように$サインで固定しておけば、B6から下にドラッグしてあっという間に埋められるのではないでしょうか。 こういう感じでいいのでしょうか。参考になれば幸いです
- pascal3141
- ベストアンサー率36% (99/269)
VLOOKUP を使うと簡単にできます。 (1)まず、名前を合成しておきましょう。 表がA1:D4の範囲とします。 CO 名字 名前 の次の列に、=B2 & C2の式を入れます。 (表1) CO 名字 名前 101 A B AB←ココに式を入れる 102 C D CD←ココに式を入れる 103 E F EF←ココに式を入れる (2)次に下の表(A16にCOの値が入っているとします) 名前の所に=VLOOKUP(A16,$A$2:$D$4,4)の式を入れます。 (表2) CO 名前 102 AB←ココに式を入れる 101 103 後は、下に式をコピーしておけばいいです。 蛇足ですが、VLOOKUPの最後の4は(表1)の4列目の値をとりだすということです。
- mshr1962
- ベストアンサー率39% (7417/18945)
上の表の範囲がA2:C4、下の表の範囲がA10:B12として B10=VLOOKUP(A10,$A$2:$C$4,3,FALSE)&" "&VLOOKUP(A10,$A$2:$C$4,3,FALSE) 上記をB11,B12にコピーする。 A10=102ならB10="A B"になる。
お礼
CONCATENATEを使わなくても&を使えば良かったのですね。 ありがとうございます。
お礼
定義を使えば表をわざわざ範囲指定しなくてもいいんですね。 勉強になりました。 ありがとうございます。