• ベストアンサー

EXCEL2000でセルに特定の値を入れると隣のセルに名前を表示させたい

EXCELでセルに特定の値を入れるとその隣のセルにその特定の値に対応させた名前を入れたいのです. たとえば 301であれば井上さん(仮) 302と入れると田中さん(仮) といった具合にしたいのですが やり方が解かりません. どうぞご指導お願いいたします.

質問者が選んだベストアンサー

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

#1のご回答で良いのですが (1)索引表をSheet2のA1:B3に 301 井上 302 原田 303 大村 と作ります。 (2)Sheet1のB1に関数式 =VLOOKUP(A1,Sheet2!$A$1:$B$3,2,FALSE) と入れます。 #1のご回答と違うのは絶対番地にしていることです($付き)。$が付かないと式を複写した時、うまく結果が出ないはずです。 B2から下に式を複写します。+ハンドルをB1で出して 下に引っ張ります。 (3)A列に301等を入力すると 301 井上 302 原田 301 井上 303 大村 301 井上 のようになります。 (4)もう一歩、通常は =IF(A1="","",VLOOKUP(A1,Sheet2!$A$1:$B$3,2,FALSE)) のようにして、A列セル未入力の場合、エラー表示を避けます。

kyuroto
質問者

お礼

一括の返事で申し訳ありません。 解決いたしました.ありがとうございました。 今後もよろしくお願いします。

その他の回答 (3)

  • Ryocchi
  • ベストアンサー率38% (38/98)
回答No.4

基本的には#2の回答で良いと思いますが、 例えばVLOOKUP関数を事前に入れておくと、コード(数字)を入れていないセルの隣には#N/Aとエラーが発生します。 A | B ------------- 301 井上 ←B列にVLOOKUP関数を入れておく #N/A ←関数は入っているけどA列未入力 関数を複数行に入れておくと、A列が未入力の行は全て#N/Aと表示されてしまいます。 ので、=IF(ISNA(VLOOKUP(A1,Sheet2!A:B,2,FALSE)),"",VLOOKUP(A1,Sheet2!A:B,2,FALSE)) と入力して見てください。 又、参照セル(Sheet2!の後)は列を指定すれば、行数を意識する必要はありません。 ちょっと分かりずらい説明ですいません。

kyuroto
質問者

お礼

一括の返事で申し訳ありません。 解決いたしました.ありがとうございました。 今後もよろしくお願いします

noname#49904
noname#49904
回答No.3

VLOOKUP関数を使います。    A      B        C ------------------------------- 1   301 山田 太郎 2   302 鈴木 一郎 3   303 小林 花子 これでA1からB3まで選択して、メニューから挿入→名前→定義をクリック「氏名一覧」等と名前を付けます。 次にC13セルへ =VLOOKUP(B13,氏名一覧,2,TRUE) と入力します。 B13セルへ301を入力するとC13セルには 山田 太郎 が表示されます。 C13セルの内容をC14から下へいくつかコピーをします。 表が大きければいくらでも表示できます。 VLOOKUP関数のヘルプで勉強してください。

kyuroto
質問者

お礼

一括の返事で申し訳ありません。 解決いたしました.ありがとうございました。 今後もよろしくお願いします

  • taknt
  • ベストアンサー率19% (1556/7783)
回答No.1

まず 301 井上さん(仮) 302 田中さん(仮) といったデータがあるセルを作ります。 301のほうを C列の1から 名前のほうを D列の1から入力したとします。 で たとえば A1に 301といれた場合、その隣のB1には =VLOOKUP(A1,C1:D2,2) と入れます。 すると 井上さん(仮) と表示されるはずです。 データの数が 増えたら D2を一番したの場所のに変えてください。

kyuroto
質問者

お礼

一括の返事で申し訳ありません。 解決いたしました.ありがとうございました。 今後もよろしくお願いします。