• ベストアンサー

エクセルで、基シートのデータを別シートに自動表示

エクセルの表示についての質問です。 例えば A列に名前コード、B列に名前 というシートがあり、 それを基に、別のシートに名前コードを入力すると自動的に名前が表示されるようにしたいのですが、 どうするば良いでしょうか。 教えて下さい。

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

  • ベストアンサー
  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.2

 VLOOKUP関数を使われると良いと思います。  今仮に、名前コードを入力するセルをSheet1のC1セル、名前を自動表示させたいセルをSheet1のD1セル、基シートのシート名をSheet2、そのシートのA2セルからA99セルにかけて名前コードが並んでいて、B2セルからB99セルにかけて名前が並んでいるとします。  まず最初に、Sheet1のD1セルに、 =VLOOKUP(C1, と入力して下さい。  次に、先程D1セルに入力した数式の末尾、「,」の右隣にカーソルを合わせてから、ウィンドウの下端にあるシート名の中の、基シートのシート名(ここではSheet2)をクリックします。  すると、基シートに切り替わりますから、名前コードと名前が記されているリストの中の、最初の名前コードが記されているセルを選択して左クリックした後、そのままマウスの左ボタンを押したまま、名前欄の最後のセル(未記入のセルも可)までドラッグして、リストを範囲選択して下さい。(リストの範囲が広い場合には、最初の名前コードをクリックした後、ボタンを離し、名前欄の最後を、Shiftキーを押しながらクリックした方が、楽かもしれません。)  リストの範囲選択が終了しますと、ウィンドウの上部に表示されている数式が、 =VLOOKUP(C1,Sheet2!A2:B99 と変わりますから、続けて ,2,FASE) と入力して、数式を =VLOOKUP(C1,Sheet2!A2:B99,2,FASE) に変えてから、Enterキーを押せば完了です。  ここでの、シート名やセルの名前は、あくまでも説明を行うための例として、仮に挙げたものですから、数式の中のシート名やセルの名前は、実際に使われているものに合わせて、置き換えて下さい。  尚、上記の数式では、名前コードを入力するセルに、何も入力されていない場合や、リストに無いコードが入力された場合には、エラーとなりますから、この点を改善した数式を、以下に記させて頂きます。 =IF(ISNA(VLOOKUP(C1,Sheet2!A2:B99,2,FASE)),IF(C1="","","(該当無し)"),VLOOKUP(C1,Sheet2!A2:B99,2,FASE))  こちらの数式では、名前コードを入力するセルに、何も入力されていない場合には、何も表示されず、リストに無いコードが入力された場合には、 (該当無し) と表示されます。

ringo23
質問者

お礼

回答通知メールの設定を間違えてしまい、回答いただいたのに 気付かずお礼が遅くなってしまいました。 とても丁寧なお返事、どうもありがとうございます。 使いこなせるように頑張ります!

その他の回答 (1)

  • liberty01
  • ベストアンサー率29% (16/54)
回答No.1

Vlookup関数使えば簡単にできますよ。 ※ただし、コードが重複する場合は最初のやつを持ってきてしまいますが  あくまで、コードが一意の場合です <例> シート1   A   B 1 コード 名前 2 01  鈴木 3 02  佐藤 4 03  加藤 シート2   A         B 1 {自分で入力}  =Vlookup(シート2!A1,シート1!A1:B4,2) ってかんじにすれば、シートにでAの行にシート1に対応するコードを入れればB行に勝手に該当する名前が入ります。B列に式は入ってないとだめだけどね

ringo23
質問者

お礼

お礼が遅くなり失礼致しました。 早速やってみました。 これで作業がグンと楽になります! どうもありがとうございます。

関連するQ&A