excelの質問です。

対となるkeyとvalueのリストに対して、keyで探索してvalueを拾いたいと思っています。以下の例で言うと、AとBが探索対象のkeyとvalueで、CのそれぞれのkeyでAを探索し、マッチしたBのvalueをDに挿入する、という処理をしたいです。具体的には、処理を経ると、D1にはハ、D2にはニ、D3にはイ、が入って欲しいです。

   A   B   C   D
1  a   イ   c
2  b   ロ   d
3  c   ハ   a
4  d   ニ
5  e   ホ

lookupなど使うと聞いたのですが、excelは全く分かりません。
実際には、A/Bは数万行、Cは1万弱行あります。
教えていただければ幸いです。

回答の条件
  • URL必須
  • 1人3回まで
  • 登録:
  • 終了:2007/06/03 23:08:11
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答5件)

id:SALINGER No.1

回答回数3454ベストアンサー獲得回数969

ポイント15pt

VLOOKUP関数になります。

http://www.excel.studio-kazu.jp/lib/e1tw/e1tw.html

A1からB5を選択して名前ボックスに名前をhaniとかつけて

D1の数式を

=VLOOKUP(C1,hani,2,FALSE)

にして下にドラッグします

id:SALINGER No.2

回答回数3454ベストアンサー獲得回数969

ポイント29pt

すいません。最後の3行読んでませんでした。

D列を選択して

数式を

=VLOOKUP(C1,A:B,2,FALSE)

を入れて、Ctrl+Enterを押すとD列すべてのセルに数式が入ります。

http://www.excel.studio-kazu.jp/lib/e1tw/e1tw.html

id:shunkun

すみません、その方法だと探索範囲が固定されないため、うまくいきません。D2にはA2~A6、D3にはA3~A7を探索した結果がはいってしまいます。D2もD3にもA1~A5を探索した結果が入ってほしいです。この解決がまさに知りたいところです。

2007/06/03 01:30:01
id:jack_sonic No.3

回答回数124ベストアンサー獲得回数25

ポイント28pt

セルD1に、

=VLOOKUP(C1,$A$1:$B$60000,2)

を入力します。

次に、セルD1を選択し、D1の周りに出る黒い枠、

右下の角にマウスをあわせて、十字のマークを

左ボタンを押しながらc列の一番下の行まで

下に”ドラッグ”していってオートフィルしてはどうでしょうか。

$は、参照を固定する記号です。

60000の部分はA,Bの行数です。

http://q.hatena.ne.jp

id:shunkun

なるほど、$ですね。解決しました。

ありがとうございました。

2007/06/03 14:44:47
id:Mook No.4

回答回数1314ベストアンサー獲得回数393

ポイント14pt

直接の回答でなくてすみませんが、


どの行でも 1~5行を対象としたいときには、A$1:B$5のように範囲を変えたくない行や列の頭に $ を付けてから、コピー&ペーストをすることで、同じ範囲を指定できます。


絶対参照・相対参照と$マークについて説明します Excelの絶対参照って何?

id:shunkun

ありがとうございます。

2007/06/03 23:03:34
id:rikuzai No.5

回答回数1366ベストアンサー獲得回数141

ポイント14pt

D2にはA2~A6、D3にはA3~A7を探索した結果がはいってしまいます。

SALINGERさんの書かれている式通りならその結果は出ないはずです。


=VLOOKUP(C1,A:B,2,FALSE)

ではなく、

=VLOOKUP(C1,A1:B5,2,FALSE)

とD1に入力していませんか?


ちなみにA1:B5の範囲を固定したい場合は、

SALINGERさんの1の回答のある「名前」が有効ですが、

数式でそのまま指定するなら絶対参照を使用します。

(上の列固定で問題ないはずですが参考まで)

=VLOOKUP(C1,$A$1:$B$5,2,FALSE)


VLOOKUP関数と絶対参照--Excel・エクセル

id:shunkun

なるほど。いまやりなおしてみたら、うまくいきました。ご指摘ありがとうございます。SALINGERさんすみません。

2007/06/03 23:06:38
  • id:SALINGER
    回答を使い切りコメントが使えなかったので修正できませんでした。
    フォローしてくださったrikuzaiさんありがとうございます。
    そのことでjack_sonicさんから20ポイントいただきました。
    それはそのままrikuzaiさんに送りました。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません