• ベストアンサー

複数のエクセルシートからの検索

社員住所録が会社ごとに別シートに作成されている状態で、任意の会社(シート)の任意の氏名とか電話番号をキーにして個人情報(一行分)を検索(取り出し)する場合の関数の使い方を教えて下さい。 住所録の項目は左から下記の順で各セルに入っています。 『社員番号・氏名・〒・住所・電話番号・生年月日』 以上、宜しくお願いします。

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

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

関数でこの程度は出来ると言うサンプル例を上げます。 (データ:Sheet1を関東工業にシート名変更) (A列) (B列) (C列) 氏名 部署 役職 上野 秘書 係長 中野 購買 課長代理 野田 総務 課長 下野 企画 部長 村野 厚生 部長 川野 総務 室長 山野 人事 主任 (データ:Sheet2を阪神産業にシート名変更) 氏名 部署 役職 植田 総務 係長 半田 人事 課長 大田 企画 課長代理 下田 厚生 部長 木村 購買 主任 上村 総務 部長 中村 秘書 室長 (Sheet3に) A1に会社名(例、関東工業) B1に氏名(例、野田)をいれる。 (A1・B1以外ならどこでも良いが) A3、B3、C3にそれぞれ関数式 =OFFSET(INDIRECT($A$1&"!$A$1"),MATCH($B$1,INDIRECT($A$1&"!$A$1:$A$10"),0)-1,0) =OFFSET(INDIRECT($A$1&"!$A$1"),MATCH($B$1,INDIRECT($A$1&"!$A$1:$A$10"),0)-1,1) =OFFSET(INDIRECT($A$1&"!$A$1"),MATCH($B$1,INDIRECT($A$1&"!$A$1:$A$10"),0)-1,2) といれる(最後の引数が0->1->2と変化するだけ。項目数が増えても、関数式は複写して一部手直しで出きるということ。)。 A1,B1に会社名と氏名を入れると、即座にA3:C3に 氏名 部署 役職の内容が出ます。 しかし見つからない時のエラー対処や同姓同名の存在に対処するなど、満足の行くものにするには、関数では複雑になりすぎて、力不足でしょう。 本質問は、質問を記述するのは簡単ですが、ミニ・(コンピュタ)システムとも言えなくもない内容であって本格的にやるのは (1)エクセルVBA (2)アクセス (3)アクセスVBA を使うべきと思います。

gnamasute1
質問者

お礼

お陰様で大変参考になり、ありがとうございました。 又、素早いご回答にビックリ・感激です。 今後も宜しくお願い致します。

その他の回答 (1)

  • 7_7_7
  • ベストアンサー率24% (115/469)
回答No.1

Cells.Findを使えば簡単に出来ます。 データ領域には名前の定義をしてそこを探すマクロを組めば大丈夫ですけどマクロが解らないと関数ではちょっと難しいかもしれません。

gnamasute1
質問者

お礼

アドバイス、ありがとうございます。 これから少しマクロを勉強します。

関連するQ&A

  • エクセル複数シートからの検索

    部門別住所録が、部門毎に別シートにあります。 各シートのデータは以下のように並んでいます。 社員番号、氏名、住所、電話番号、生年月日。 この状態で、任意の項目(例えば氏名)を指定して社員番号とか電話番号など一行分のデータを検索する方法(関数の使い方)を教えて下さい。 INDEX関数とMATCH関数でやってみましたが、シートを跨ると上手くいきません。 よろしくお願いします。

  • excel2013です複数セルに入力した値が他のセ

    エクセル2013です。 複数のシートに複数名の住所、氏名、生年月日、電話番号、を入力し用としています。 氏名を入力すると自動的に氏名の上のセルに住所、氏名の横のセルに生年月日、電話番号が入力されるような設定はできますか? よろしくお願い申し上げます。

  • エクセルでの社員管理

    エクセルでデータベースというのか社員番号、氏名、生年月日、住所等 社員ごとに一行ずつ入っています。これを一人1枚の社員台帳を作ることしました。 たとえば、社員番号を入れるとデータベースを元にして、すべて自動的に入るように設定したいのですが、どう設定すればいいのでしょうか?宜しくお願いします。

  • Excelの表引き関数で複数の項目を引数にしたい場合の方法は?

    (登録番号,氏名,生年月日,住所) (1,山田太郎,19800101,東京都) (2,山田次郎,19810101,大阪府) (3,山田花子,19820101,愛知県) ・ ・ ・ このような形で並んでいる表を参照して、 別表 (登録番号,氏名,生年月日,住所) ・ ・ ・ にどれか1つの項目を入れると残りの項目が出てくる方法を考えています。 (例えば登録番号を入れれば氏名、生年月日、住所が。氏名を入れれば、登録番号、生年月日、住所が) 入力する項目が1つならばVlookup関数を使えばいいというのはわかるのですが、 その場合に応じて入力する項目が異なる場合はどのような関数を使えばよいでしょうか? よろしくお願いします。

  • エクセルでアクセスの機能が使えますか?

    次のような機能はアクセスでは一発で出来るのですが、今の会社のパソコンにはアクセスが入っておらず、しかもお金がかかるという理由で買ってもらえません。プログラムを組めば出来るものでしょうか? やりたい事 シート1 A:社員番号 B:氏名 C:学歴 D:入社年月日 シート2 A:社員番号 B:住所 C:電話番号 シート1と2のデータを社員番号をキーにして下のような1つのデータベースを作りたいのです。 シート3 A:社員番号 B:氏名 C:住所 D:入社年月日 アクセスでしたら、簡単に出来るのですが。。。エクセルでイチイチ貼り付けて処理をしているのですが、時間もかかるし、間違いも多くちょっと困っています。 何かいいアイディアがありましたら、教えて下さい。

  • エクセルで複数シートから、検索して抽出

    はじめまして、右も左も分からない初心者です。 説明出来ないんですが、よろしくお願いします。 【ご質問内容】 エクセルは、XPを使用しています。 エクセルのVBAで、指定したキーワードを 含むデータを抽出したいと思っています。 【例】 Sheet1 A B C D E 1 番号 氏名  郵便番号  住所  メールアドレス 2 1   ○   △    大阪府   ○○ 3 2   △   ○    茨城県   ○○ Sheet2  A  B    C     D      E 1 氏名 番号 郵便番号  住所  メールアドレス 2 ○  1   △    福岡県   ○○ 3 △  3   ○    茨城県   ○○ と各シートに、列がそれぞれバラバラになっています。 茨城県を検索すると、新しいシートに、 Sheet3  A  B    C     D      E 1 氏名 番号 郵便番号  住所  メールアドレス 2 2   △   ○    茨城県   ○○ 3  A  B    C     D      E 4 氏名 番号 郵便番号  住所  メールアドレス 5 △  3   ○    茨城県   ○○ という風に、抽出したいと思っています。 どうしたらいいでしょうか?? よろしくお願いします。

  • Excel 文字を抜き出す関数を教えてください

    ある一つのセル(例えばA1)に 「住所 ○○県・・・ 氏名 ××太郎 電話番号」 などの文字がずらっと入っておりそこから必要情報だけを抜き出して別な セルに貼り付けしなければいけません。 (この作業をしなくてはいけないセルがたくさんあります。) 具体的には「住所だけ」「氏名だけ」などの文字だけ一つ一つ抜き出さなくては いけないので、できるだけ関数を使用して作業を行いたいと思っています。 例えば、A1のセルから住所だけをB1セルに抜き出す場合、どのような 関数をいれれば良いのでしょうか。 「”住所 "の後から” 氏名”の前までの文字を抜き出す」 というような関数が作れれば、他の電話番号などにも応用できると思うのですが・・ ちなみに、それぞれの単語(?)の間は半角スペースが入っています。 (住所と○○県の間や、その次の氏名との間など) お手数おかけしますが、ご存知の方がいらっしゃいましたらご教授いただけますと 大変助かります。 よろしくお願いいたします。

  • エクセルについて教えてください。

    エクセルについて教えてください。 A、B、2枚のシートがあります。 Aには社員コードや氏名、住所や生年月日等の一覧を作成。 Bのシートの任意のセルに社員コードを入力すると 一定のセルにそのコードの人の情報を自動的に表示させる方法を教えてください。

  • エクセルの関数でこのようなことはできますか?

    エクセルについて質問です。以下のようなことはできますか? 例えば2つの社員データのファイルがあるとします。 1つのファイルには社員番号と社員氏名、もう1つのファイルには社員番号と社員住所、それぞれのファイルに入っている社員は同じではなく、両方に存在する人もいればどちらか片方にしか存在しない人もいます。 社員番号をキーにしてこの2つのファイルを以下のように合体したいのです。 ファイル1 社員番号・社員氏名 ファイル2 社員番号・社員住所 合体後  社員番号・社員氏名・社員住所 どちらか片方にしか存在しない人もいるので合体後に氏名もしくは住所が空欄になる人もいると思いますが、それはそれでいいです。 過去にもこういったことは何度もあったのですが、とりあえず社員番号順に並びかえてあとは1つずつコピペしていました。でもデータ数が1,000件を超えるので作業がかなり面倒なのと、こんな原始的なやり方でなくてもきっといい方法があると思うのですが・・・ どなたかお知恵をお貸しください。

  • エクセル ボタンを押したら別シートへ同じものを入力

    Excelで表を作りました。 その表には、(1)名前(2)生年月日(3)住所(4)備考 という欄を作成してあります。 一行で一人分の入力になっています。 そこで、一人分の横一行の入力がなされ、その行に対する何かしらの決定ボタンを押したら シート2にの指定する箇所 (1)はセルA1 (2)はB1セル (3)はセルC1 (4)はセルD1 に同じものを入力させたいのですが、どうしたらよいでしょうか? マクロでも普通の入力する関数でもいいので どのようにすればいいかわかる方がいましたら教えてください! 本当に困っていてどうすればいいかわからいません。

専門家に質問してみよう