- ベストアンサー
登録番号を入れるだけで表示する方法
Excel2007を使用しています。 Sheet1に1000人分の名簿(A列 登録番号、B列 名前、C列 住所、D列 TEL…)があるのですが、 Sheet2のA列に登録番号だけを入力したら、自動的にSheet1にある個々人の名簿情報を表示する方法について教えてください。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
まず、Sheet2のB2セルに次の関数を入力して下さい。 =IF($A2="","",IF(COUNTIF(Sheet1!$A:$A,$A2)=0,"(登録無し)",VLOOKUP($A2,Sheet1!$A:B,COLUMNS(Sheet1!$A:B),FALSE))) 次に、Sheet2のB2セルをコピーして、Sheet2の表中で、名簿情報を表示させたい全てのセルに貼り付けて下さい。 これで、Sheet1にある個々人の名簿情報が自動的に表示される様になります。
その他の回答 (2)
- srafp
- ベストアンサー率56% (2185/3855)
VLOOKUP 関数を利用すれば可能と考えます。 Sheet2のセルA2に登録番号を入力し、Sheet2のセルB2以降にSheet1(下記の例ではセルA2~Z1001にデータがある場合)と同じ順序で各データを表示するのであれば、 Sheet2のB2に VLOOKUP(A2,Sheet1!A2:Z1001,2) Sheet2のC2に VLOOKUP(A2,Sheet1!A2:Z1001,3) : Sheet2のE2に VLOOKUP(A2,Sheet1!A2:Z1001,5) このような感じで入力してください。 例えばSheet2のB2に入力する VLOOKUP(A2,Sheet1!A2:Z1001,2) の構文の意味を説明すると、 『A2』 Sheet2のセルA2に入力した値を検索キーにしろ。 『Sheet1!A2:Z1001』 検索するデータはSheet1!A2:Z1001の範囲だ。 ・注意点 「Sheet1」の部分は、実際のSheet名を入れてください。 検索キーに指定した値は、ここで指定した範囲の最も左側の列を見に行きます。 Sheet1に入力したデータは、範囲のモットも左側の列をキーにして昇順にして下さい。 『2』 Sheet2のB2には、指定した範囲の左から2番目の列に入力している情報を表示しろ。
お礼
ありがとうございました。 「例えば…」以降の説明がとても役立ちました! なかなか解決できず、困っていましたが、 Sheet名を変えていたので、「実際のシート名を」 という説明がなければ、投げ出してしまうところ でした。 ありがとうございました!
VLOOKUPで検索
お礼
ありがとうございました! 思い描いていたように、データーが飛んできました! 今まで、「コピー・貼り付け」を繰り返していたので… 今後は効率良く作業ができそうです! ありがとうございました。