プロが教えるわが家の防犯対策術!

エクセルの異なるシートから共通するIDをたよりに特定のデータを別シートに移すやり方はありますでしょうか

シート1
ID    氏名       住所
10001  Aさん     神奈川県
10002  Bさん     大阪府
10003  Cさん     新潟県
10004  Dさん     岡山県

シート2
ID    氏名       学校名
10001  Aさん     県立A高校
10003  Cさん     公立D高

とあるのをシート2に
ID    氏名       学校名       住所
10001  Aさん     県立A高校    神奈川県
10003  Cさん     公立D高     新潟県

 というようにシート1のデータを付け加えたいです
データ件数が1000件以上あり 手作業ではいつになるやら・・・・・
締切も迫っているわで困っています
アドバイスいただけるとありがたいです よろしくお願いいたします

A 回答 (3件)

おはようございます。


Vlookup関数をご存知でしょうか?
シート2の住所の列に
=Vlookup(A2,シート1!A:C,3) といれて下までコピーしてください。

Vlookup(検索するセル,検索する範囲,表示する列の番号) と云った感じです。
シート1の左端 ID を上から検索して一致した行の右へ3列目の値を出します。
また シート1のIDが昇順にきちんと並んでいない場合は
=Vlookup(A2,シート1!A:C,3,False) と最後に引数を入れる必要があります。
詳しくは ExcelのHelp Vlookupで検索してみてください。
    • good
    • 0
この回答へのお礼

 早々に教えていただいてほんとうにありがとうございます。
教えていただいた方法で魔法のように! できました。
FALSEをいれないと、シート2のみにあるかたにも数値が入ってしまったのですが
Falseを入れることで解決しました。
これでこんばんは眠れそうです。
エクセル関数、頑張って勉強します・・・・・。

お礼日時:2010/11/21 17:06

 Sheet1で、IDが入力されている列と、住所が入力されている列は、それぞれ何列なのでしょうか?


 もし、IDが入力されている列がA列で、住所が入力されている列がC列である場合には、以下の様な操作を行うと良いと思います。

Sheet2の住所を入力する列の1行目のセルに、次の数式を入力

=VLOOKUP(A1,Sheet1!A:C,3)&""

(尚、例えばSheet1で住所が入力されている列がD列である場合の数式は、

=VLOOKUP(A1,Sheet1!A:D,4)&""

になります)
  ↓
Sheet2の住所を入力する列の1行目のセルをクリック
  ↓
選択範囲を示している黒い太枠の内側にカーソルを合わせて、マウスを右クリック
  ↓
現れた選択肢の中にある[コピー]をクリック
  ↓
キーボードのShiftキーを押しながら、Sheet2の住所を入力する列の最終行(多少多くても構いません)のセルをクリック
  ↓
選択範囲を示している黒い太枠の内側にカーソルを合わせて、マウスを右クリック
  ↓
現れた選択肢の中にある[貼り付け]をクリック

 これで、Sheet2にSheet1の住所が表示されますが、もしも、後でSheet1のデータを削除する場合には、引き続いて以下の操作が必要になります。

Sheet2の住所を入力する列の最も上にある、列番号を示すアルファベットが表示されているマスをクリック
  ↓
選択範囲を示している黒い太枠の内側にカーソルを合わせて、マウスを右クリック
  ↓
現れた選択肢の中にある[コピー]をクリック
  ↓
選択範囲を示している黒い太枠の内側にカーソルを合わせて、マウスを右クリック
  ↓
現れた選択肢の中にある[形式を選択して貼り付け]をクリック
  ↓
現れた「形式を選択して貼り付け」ウィンドウの中にある、[値]と記されている箇所を、クリックしてチェックを入れる
  ↓
「形式を選択して貼り付け」ウィンドウの[OK]ボタンをクリック

 以上です。
    • good
    • 0
この回答へのお礼

 詳しく教えていただきありがとうございます!
数式の最後の&""がよくわからなかったのですが、この符号なしでできました。
&がついていたほうが便利な部分もきっとあるのですよね。
まだ今の私には、この意味するところがよくわからないので、これから勉強します!
ひとまず、この締め切りを終えてから。
お忙しいところ回答をいただき、本当にありがとうございました。

お礼日時:2010/11/21 17:10

[d2]=VLOOKUP(A2,Sheet1!A1:C5,3,FALSE)


とか
[d2]=INDEX(Sheet1!C:C,MATCH(A2,Sheet1!A:A,0))
    • good
    • 0
この回答へのお礼

 ありがとうございます!
1番目の方法でできました。

お礼日時:2010/11/21 17:03

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!