• ベストアンサー

複数シートの名簿から同じレコードに印をつける 

エクセル 2003または2007で作業したいです。 複数のシートに名簿があります。レコード項目は共通です。 画像のように毎年参加者の名簿があり、今年参加した方が過去いつ参加したかを、任意の列に「●」などを表記させる場合の数式を教えてほしいです。 検索させる項目は、「名前」と「電話番号」か「郵便番号」の2つで検索させたいです。 VBA?などの知識がないと無理でしょうか?わかる方ご教示ください。お願いします。

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

  • ベストアンサー
  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.2

画像が不鮮明でシート名が不明ですが、2009年のデータのシート名が2009と入力されていて、E1セルの項目名が「2009」のように記載されているなら(シート名と項目名が同じなら)、E2セルに以下の数式を入力して下方向及び右方向にオートフィルコピーしてください(A列とB列が一致するデータに●を付けています)。 =IF(COUNTIF(INDIRECT(E$1&"!A2:A100"),$A2)*COUNTIF(INDIRECT(E$1&"!B2:B100"),$B2),"●","")

mihako261821
質問者

お礼

すごいっす!! まさにこのようにしたかったのです。ありがとうございました!!

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

  • bunjii
  • ベストアンサー率43% (3589/8248)
回答No.1

>検索させる項目は、「名前」と「電話番号」か「郵便番号」の2つで検索させたいです。 全てのメンバーに電話番号が記録されていれば電話番号のみで検索すれが個人が特定できます。 「名前」=「姓名」のことであれば「名前」と「郵便番号」でも重複は避けられると思いますが絶対ではありません。 2つ以上の要件で検索する場合は関数式の中で配列の値を返すIF文を使うと分かり易いでしょう。 検出行番号=MIN(IF((氏名列=名前)*(電話番号列=電話番号),ROW(1:最大行番号,"")) 検出された行番号を利用してINDEX関数で必要な処理を行えます。 マスターになる名簿と毎回の参加者名簿が別シートのような印象なのでマスターになる名簿の処理も必要かと思います。 管理手法を決めてマスターになる名簿を作成してから再質問された方が良いと思います。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 名簿のデータを自動的に宛名ラベルにリンクさせる

    エクセルで名簿のデータを入力しています。(個人・団体・賛助・・・と複数の名簿データがあります。) 宛名ラベルはワードで差込印刷をしていて、それを保存させ毎年異動がある度に書き換えているみたいです。 この作業が面倒で、時間がかかって仕方ないです。 元データの名簿を入力したら自動的にラベルの方も変わるようにできないでしょうか?アクセスが一番いいみたいなのですが、職場のパソコンにはアクセスはありませんし、自分自身使ったことないので・・・。 出来れば関数かマクロ等でできれば・・・と思うのですが 一応自分なりに試作してみたのですが 名簿 a1:番号 b1:名前  C1:郵便番号 D1:住所 E1:住所2 宛名ラベルのb1にIF(ISERROR(VLOOKUP(A1,参加者名簿!$B$2:$G$105,3,FALSE)),"",VLOOKUP(A1,参加者名簿!$B$2:$G$105,3,FALSE)) a1に番号を入力すると名簿のデータが入るという感じにしたのですが、今の私にはこれがいっぱいいっぱいです。 住所2があるのとないのがあるので、セルの数が3つでいいのと4つ必要になる部分があるのですが、同じ形にすると4つで合わせるしかないので元データの入力されてない部分に番号を入れると()()()と表示されます。入力してない部分は表示しないようにできないのでしょうか? 他にもっといい方法がありましたら教えて下さい。 宛名ラベルは a1           b1→郵便番号   a2それぞれに番号入力  b2→住所 a3           b3→名前  をFまで同じように3×7列 パソコンは詳しくないので出来れば解りやすく教えていただけると助かります。 解り辛い説明で申し訳ないですが宜しくお願いします。  

  • VBAにて、複数シートからデータを抽出

    エクセルVBAです。複数のシートからの集計、抽出の書き方について教えてください。 1つのファイルに50ほどのシートがあります。 各シートの列数やフォーマットは、同じですが行数は、異なります。 例 sheet1(シート名:集計):集計用   A    B    C       D     1 ※検索キーワードを入れるセルや 2   マクロを登録するボタン用として2行開けてある。 3 番号 氏名  郵便番号  住所  sheet2(シート名:STU)   A    B    C       D      1 番号 氏名  郵便番号  住所  2  1  AB   345    YZ 3  1  CD   678    QS sheet3(シート名:XYZ)   A    B    C       D      1 番号 氏名  郵便番号  住所  2  2  AB   345    YZ 3  2  CD   678    QS 4  3  CD   678    QZ 抽出前は、上記の様なファイルとなっております。 上記では、4列としてますが実際は、23列あります。 また、sheet3までですが、実際は、40~100シート位あります。 sheet1(シート名:集計):集計用   A    B    C       D     1     ※検索キーワード:氏名_CD としマクロを実行する  2       (↑例として氏名でフィルタリングしてますが他の指定項目でも実行したい、複数条件は、無)   3 番号 氏名  郵便番号  住所 4  1  CD   678    QS    (←sheet2(シート名:STU)の3列目) 5  2  CD   678    QS  (←sheet3(シート名:XYZ)の3列目) 6  3  CD   678    QZ  (←sheet3(シート名:XYZ)の4列目) ・  ・  CD    ・      ・ (←sheet4(シート名:・・・)の・列目) ・  ・  CD    ・      ・ (←sheet10(シート名:・・・)の・列目) ・ ・  CD    ・      ・ (←sheet27(シート名:・・・)の・列目) ・  ・  CD    ・      ・ (←sheet27(シート名:・・・)の・列目) ・ ・  CD    ・      ・ (←sheet30(シート名:・・・)の・列目) 上記の様にすべてのシートから氏名:CDでフィルタリングし集計シートに抽出したい。 よろしくお願いいたします。

  • エクセル名簿から必要項目にチエックを入れたデーター

    縦列に名簿が200項目位あります。 これには、番号、人名、クラス、点数と それぞれカラム毎に入力され横一列並びで共通な情報です。 必要な項目にチエックを入れたその名簿だけを 別なシート(空き部分でも可)にリストアップしたいのですが この様な事は可能でしょうか? 単に、昇降順では不可能ですし・・・ どなたかご存知の方がいらっしゃいましたら よろしくねがいます。

  • 複数列の値を条件に応じて別の列に合わせて表記したい

    エクセルで困っています。 以下、現在の表にあるように、 A列に、任意の番号 B列に、任意の番号にひもづく所属番号 があるとき、C列に上から、 B列番号を表記し、その下のセルに、 B列の所属番号が同じA列の番号をすべて順番に表記していきたいとき、 どのような関数を使えば可能でしょうか。 INDEXやMATCH、ROW等を考えてみましたがうまくできません。。。 また、もし可能でしたら、後学のために関数式の意味も 合わせて教えていただければ、大変大変助かります<(_ _)> ≪補足情報≫ ・A列の所属をVlookupでB列に表記させてあります。 ・A列の数値はA列内で重複しません。 ・A列の数値はB列の所属番号内で昇順に表記されています。 ・B列の所属番号設定数は変動します。  (以下の例では、所属番号1が3つ、2が4つ・・・ですが1が5つ等になる可能性もあります) ↓現在の表↓    A   B 1  1   1 2  10  1 3  15  1 4  2   2 5  6   2 6  8   2 7  20  2 8  3   3 9  9   3 10 18  3 ↓このようにしたいです。↓    A   B  C 1  1   1  1 2  10  1  1 3  15  1  10 4  2   2  15 5  6   2  2 6  8   2  2 7  20  2  6 8  3   3  8 9  9   3  20 10 18  3  3     ・  ・  3     ・  ・  9     ・  ・  18           ・           ・           ・ ちなみに、C列の表記はA、B列と行数が合っていなくて構いません。 マクロやVBAがわからないので、関数で教えていただければありがたいです。 何卒よろしくお願いします<(_ _)> ※エクセル2010を使用しています。

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

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

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

    はじめまして、右も左も分からない初心者です。 説明出来ないんですが、よろしくお願いします。 【ご質問内容】 エクセルは、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   ○    茨城県   ○○ という風に、抽出したいと思っています。 どうしたらいいでしょうか?? よろしくお願いします。

  • エクセルの住所録から条件式のあうものだけを宛名印刷し、印刷後印刷回数のセルを加算させる方法

    エクセル形式の住所録があります。1行に1人のレコードになっており氏名、郵便番号、住所(市町村名)、住所(番地以降)は、それぞれ別々の列に、はいっています。 また、各レコードごとに宛名を印刷した回数を入力してある列があります。 今、やりたい作業は、 1.過去に宛名を印刷した回数を元に名簿の中から選び出したリストにハガキ宛名印刷をし、回数を1つ増やす。例えば、過去に2回印刷し、送付した名簿に3回目のハガキ印刷をし、その方の回数のセルのところを3に書き換える作業を自動的にやりたいのです。 また、できればここまで一挙に自動でできればありがたいのですが 2.任意に選択したリストから、過去の印刷回数に応じて、ハガキの宛名の下半分の欄にそれぞれ異なったコメントを刷り込み、印刷し、かつ印刷回数の数字を1つ増やす。 レコードは、固定的なものでなく、下に頻繁に新しい方が付け加わり、また行の削除により消して行くものもあります。 専用ソフトを買うことは考えてないので、エクセル、ワードなどのソフトを利用してやる方法を教えてください ワードの差込印刷にVBAを、組み合わせて条件検索と送付回数の自動的書き換えをさせるといいらしいのですが、やり方がわからないので。 もちろん他にいい方法があれば、それでも結構です

  • エクセルで複数のシートのピボットテーブルを使用する方法

    ひつのシートのピボットテーブルでは、ウィザードを使って、レイアウト選択メニューで行・列それぞれ必要とする項目名(フィールド)をドラッグ選択できますが、複数シートで作成すると行・列それぞれが「行」「列」の表示だけで任意の項目を選択できません。試しに複数のシートで同じフォームで全てのセルにデータが存在すれば可能なようですが・・・ 問題のファイルは、各シートのデータフォームが若干異なっています。ただし、項目名の一部は共通です。また、シートによって入力していないの項目列があります。ただし、ピボットテーブルで必要とするデータの行列ともに同一項目名でデータは存在しています。例 データ列 A~J列の10列分、シート1は全て入力済、シート2は3・4列目が未入力(空白)、シート3は9・10列目が未入力(空白)。レイアウトで任意の項目をドラッグ出来ず「列」「行」としか選択出来ません。それぞれA~J列を選択して、1・5・6・7列のデータの表示をしたいのですが、どなたか教えてください。よろしくお願いします。

  • レコードセット検索

    excel vbaでレコードセットの中身を検索して レコードセット内の別フィールドのデータを取得する方法がわかりません。やりたいことは、 |店舗名称|店番号|  渋谷店   01  池袋店   02  目黒店   03 というレコードセットがあって渋谷店を コンボボックスで選択したときに、店番号の"01"が 別のコンボボックスで表示されるようにしたいのですが うまくいきません。どなたか分かる方教えてください。 お願いします。

  • Access2010で、名簿を作って使っています

    Access2010で、名簿を作って使っているのですが。 Access2010で、名簿を作って使っているのですが、 普通の単票形式で、フォームを作って、そこで新規登録したり閲覧したりしています。 その人の顔写真を1データごとに1枚ずつ載せているのですが、 970件を超えたあたりで、いきなりファイルが壊れます。 先に写真以外のデータ(すべて文字)は入力を1000件以上しても、普通に動作しました。 最後に写真だけ貼る作業をしたのですが、970件を超えたあたりで必ず壊れるので、写真が関係あるのかなあ、と勝手に思いまして…。 症状としては、写真を貼って「次のレコード」の繰り返しで貼る作業をしていたのですが、 必ず970件を超えたあたりで「次のレコード」ボタンを押したときに「指定したレコードに移動できません。」と表示されます。 そうなると、もうレコードを移動できません。 仕方がないので閉じようとすると「データベース"を開くことができません。アプリケーションで認識できないデータベースであるか、またはファイルが破損しています。」と出て、 「このレコードを保存できません。」と出ます。 「はい」を押すと強制的に閉じれるのですが、もう一度そのファイルを開くと 「レコードは削除されています。」と出ます。 そしてフォームは開けません。 開こうとすると「レコードは削除されています。」と出ます。 一番メインのテーブルを開いて中を見てみると、 写真が貼れなくなった人(指定したレコードに移動できません。)と表示された時の人のデータが 全項目「#Deleted」になっています。 この症状に身に覚えがある方、 解決方法を知っていらっしゃる方、 おりましたらぜひ、ご教授ください…。 よろしくお願いします。

専門家に質問してみよう