• ベストアンサー

登録番号を入れるだけで表示する方法

Excel2007を使用しています。 Sheet1に1000人分の名簿(A列 登録番号、B列 名前、C列 住所、D列 TEL…)があるのですが、 Sheet2のA列に登録番号だけを入力したら、自動的にSheet1にある個々人の名簿情報を表示する方法について教えてください。

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

  • ベストアンサー
  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.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にある個々人の名簿情報が自動的に表示される様になります。

fuku0ka
質問者

お礼

ありがとうございました! 思い描いていたように、データーが飛んできました! 今まで、「コピー・貼り付け」を繰り返していたので… 今後は効率良く作業ができそうです! ありがとうございました。

その他の回答 (2)

  • srafp
  • ベストアンサー率56% (2185/3855)
回答No.2

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番目の列に入力している情報を表示しろ。

fuku0ka
質問者

お礼

ありがとうございました。 「例えば…」以降の説明がとても役立ちました! なかなか解決できず、困っていましたが、 Sheet名を変えていたので、「実際のシート名を」 という説明がなければ、投げ出してしまうところ でした。 ありがとうございました!

noname#142908
noname#142908
回答No.1

VLOOKUPで検索

関連するQ&A

  • EXCEL関数について質問です

    EXCELで同窓会旅行用の名簿を作っているのですが、下記のような動きをするEXCEL関数って作ることができますか? 具体的な方法を教えていただけると嬉しいのですが。。。 ・シート Sheet1に名簿一覧がある(例:A列は名前一覧、B列は部屋番号の空欄) Sheet2に部屋番号一覧がある(例:A列は部屋番号一覧、B,C,D列は名前の空欄) ・動き Sheet2のB,C,D列の名前の空欄に名前を入れていくと、 Sheet1の名簿の名前に対応した部屋番号がB列に自動で挿入される 万が一、Sheet2のB,C列(名前欄)で名前が重複してあった際には Sheet1の名簿に対応したB列に「エラー」と表示される ※Sheet1の名簿の名前(A列)は既に記入済みです。 ※Sheet2に部屋番号(A列)は既に記入済みです。 以上、お手数ですがよろしくお願いいたします。

  • 【エクセル2000】郵便番号を入力すると住所を表示するようにしたい(過去質問確認済)

    エクセル2000で郵便番号を入力すると住所を表示するようにしたいと考えています。 表示方法と現在の関数は次の通りです。 【入力シート】 A列:郵便番号入力セル B列:住所 全体(=C列&D列&E列) C列:住所 都道府県 (=VLOOKUP(A列,'データシート'!$A:$D,2,FALSE) D列:住所 市町村 (=VLOOKUP(A列,'データシート'!$A:$D,3,FALSE) E列:住所 番地以下 (=VLOOKUP(A列,'データシート'!$A:$D,4,FALSE) 【データシート】 A列:郵便番号 B列:住所 都道府県 C列:住所 市町村 D列:住所 番地以下 表示方法はこののやり方で問題がないのですが、 全国住所データが約12万件以上あるため、エクセルの列に入りきりません。 過去の質問を確認しましたが、希望の回答はありませんでした。 どうにかして検索データの量を12万件以上にすることは出来ませんか? シートを複数に分けるとか、VLOOKUP関数の検索列を複数に分けるなどでも結構です。 宜しくお願いします。

  • 番号入力するとデーターから自動的に該当に入力できる?

    下記例の入力したいシートに種類番号を入力すると、別シートの内容から検索して最初の入力したいシートの名前・住所欄に自動的に入力出来るようにできたらいいなと考ええています、そんなことが出来るでしょうか? 例■入力したいシート    A    B  C D E F 1種類番号 3 2名前   ううう  3住所   ccc 4 ■データシート    A    B    C  D E F 1種類番号 名前  住所 2 1    あああ aaa 3 2    いいい  bbb 4 3    ううう   ccc 5 4    えええ   ddd

  • 異なるシートに自動的に書き込みするには

    エクセルで、シート1・シート2があります。 シート1 B列 名前 C列 アドレス D列 年齢 E列 住所 とありまして、100人程作ってあります。 それを、 シート2に自動的に書き込まれるようにしたいです。 シート2には、 A列 名前 D列 アドレス G列 年齢 I列 住所 にしないとなりません。 (例) シート1のB1 に「名前」と入力すると  シート2のA1 に「名前」と自動入力 という形です。 宜しくお願いします。

  • 「エクセル」で、「アクセス」のようにデータを呼び出したい

    「Excel2000」を使用しています。 少し、ややこしいのですが… たとえば住所録で、 「sheet1」の 1行目にリストのタイトルが入っていて、 A2、A3…に通し番号、 B2、B3…に名前、 C2、C3…に住所、 D2、D3…に電話番号 が入っているとします。 その時、「sheet2」の (たとえば)A2に 「sheet1のA2」に入っている通し番号を入力すれば、 その行に入力されている名前や住所や電話番号が、 任意のセル(たとえばD10、C8、C9)に表示される… といったことは可能でしょうか? こういったことは「Access」が 得意なんだと思いますが、なんとか エクセルで出来ないものでしょうか? マクロなどを使うのでしょうか? マクロはほとんど触ったことがないのですが、 チャレンジしてみますので お教え願えませんでしょうか。

  • 郵便番号から自動的に住所を表示する方法

    Excel2016を使っています。 郵便番号変換機能はついているので、 郵便番号を入力して変換すると、住所が出てくるのですが、 例えば、A1のセルに郵便番号を入力したら、自動的にB1のセルに住所を表示させるようにしたいのですが、 どのようにしたらできますか?

  • VBAでソートして、貼り付けのやり方

    (条件及び操作) 1 シートが2つあります。(元データ と 名簿シート)という名前。 2 名簿シートのH2に数字を入力する。元データのシートの1行目にある、番号と一致する列を操作する。 3 元データの対象の列で、まずD列(組ごと)に、1組・2組をソートする 4 次に、対象の列(科目:国語や理科など)事に、○をソートする 5 ソート後に、番号、名前、出身と○をコピーする。 6 その後、名簿シート(1組でソートしたものは、B2、2組でソートしたものはE2)に貼り付ける 7 対象の列の科目名(国語なら国語を)をA1に貼り付ける 8 元データのソートを解除する (備考) 番号も科目も100ぐらいあります。 これらの(条件及び操作)を元に、名簿シートのH2に任意の数字を入力して、元データの対象の列を上記(1~8)の操作を行いたいと思います。 《シート名:元データ》 A列   B列   C列   D列   E列   F列   G列   H列   I列   ・・・                       1    2     3     4    5   ・・・   番号  名前   出身  組    国語  理科   英語   数学  社会  ・・・ 001 Aさん  東京    1     ○                ○   ○  002 Bさん  沖縄   1     ○                 ○   ○  003 Cさん  鹿児島  1     ○                     ○  004 Dさん  青森    1     ○                     ○  005 Eさん  北海道  2     ○          ○  006 Fさん  京都   2     ○          ○     ○ ・ ・ ・ 《シート名:名簿シート》      A列   B列   C列   D列   E列   F列   G列   H列    国語     1組              2組     番号   名前   出身  番号   名前   出身  番号入力      お忙しい中、大変申し訳ございませんが、どうぞよろしくお願いします。 また、質問の内容などがわかりづらいなどの事がありましたら、ご指摘ください。

  • EXCELの関数:2つの条件から1つの値をひっぱってきたいんですが・・・

    EXCELの関数の使い方を教えてください。 ・Sheet2に元になる名簿(名前、ニックネーム、登録番号)が一覧になったものがあります。 ・Sheet1に、名前かニックネームのどちらかを入力したら、その人の登録番号が自動的に表示されるようにしたいんです。 ・元の名簿にのってない人は、未登録だとわかるように空欄にするか、*マークをつけたいです。 例えば、Sheet2の名簿のセルB2「山田花子」セルC2「はな」セルD2「No.32」とあって、新しいリストを作るSheet1のセルB2に「山田花子」もしくは、「はな」のどちらかを入力すれば、C2に「No.32」とひっぱってくるようにしたいんです。。。 VLOOKUP関数を使って頑張ってみてるんですけど、 2つの条件のうちのどちらかに一致すれば・・・ ってゆうのを作るにはどうしたらいいのかで固まってしまいました。 何かほかの関数と組み合わせたらいいんだろうと思うのですが、まったくわからないので、助けていただけませんか? よろしくおねがいします。

  • EXCEL:ID番号の自動入力

    EXCEL:ID番号の自動入力 複数のシートに、 B列  C列 日付  案件 が入力されるファイルがあり、A列に自動的にID番号をふりたい と考えております。 可能であれば、B列の日付ごとに複数シートにわたって(シート毎のID ではなく、ファイル内で連番)ID番号が入力されればベストなのですが、 同日付の案件もあるのでそれはやはり関数では難しいでしょうか? また、B列に日付を入力された時点で、連番式にIDが入力されるVBA を組んだとして、その行を削除した場合、他のIDも自動的に一個前に詰める ように組むことはできますでしょうか? もしよい方法をご存知の方いらっしゃいましたら ご教示願えれば幸いです。

  • VLOOKUP関数が数式として認識されません!

    スポーツクラブの学童会員名簿を作成しています。 【目的】 VLOOKUP関数を利用して、シート1「名簿」のA列に会員番号を 手入力すると B列に学年、C列に氏名が各々自動入力されるようにしたい。 【設定】 ・シート1を「名簿」とし、  A列を会員番号、B列を学年、C列とD列を結合して氏名としました。 ・シート2を「参照データ」とし、  A列を会員番号、B列を学年、C列とD列(結合を解除)を氏名と  しました。 ・シート2の1行目はタイトル行とし、実際のデータが入っている  部分はA2:D20です。 ・シート1、シート2の全データは文字列として書式設定しています。 【状況】 学年を検索するための数式をシート1のB2に以下のとおり 入力しました。  =VLOOKUP(A2,参照データ!$A$2:$D$20,2,0) ところが、B2セルには正常な値(学年)が表示されずに 上記の数式がそのまま表示されてしまうのです。 A2に会員番号を入力してもB2の表示は変わりません。 本やウェブで解決方法を調べてみましたが、一向にわからず 困り果てております。 私はエクセル初心者なので一般的にはくだらない質問かも しれませんが、何卒ご教示くださいませ。

専門家に質問してみよう