• 締切済み

エクセルで月ごとの複数データを別シートに抽出したい

tom04の回答

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.5

こんばんは! 極端にデータ量が多い場合はおススメしませんが・・・ ↓の画像で説明します。 上側がSheet1、下側がSheet2とします。 Sheet2のA1セル(B1セルと結合しています)とC1セル(D1セルと結合)の表示形式に手を加えます。 A1~C1セルを範囲指定 → 右クリック → セルの書式設定 → 表示形式タブ → ユーザー定義 → G/標準 と表示されているところを消して 0月レンタル と入力し、OK そしてA1・C1セルには単に月の数値のみを入力します。 次にSheet2のA3セルに =IFERROR(INDEX(Sheet1!A$2:A$1000,MATCH(SMALL(IF(MONTH(Sheet1!$B$2:$B$1000)=$A$1,Sheet1!$B$2:$B$1000),ROW(A1)),Sheet1!$B$2:$B$1000,0)),"") これは配列数式になりますので、Shift+Ctrl+Enterで確定! この画面からコピー&ペーストする場合はA3セルを選択 → 数式バー内に貼り付け  → そのまま(編集可能のまま)Shift+Ctrlキーを押しながらEnterキーで確定! 数式の前後に{ }マークが入り配列数式になります。 これを隣のB3セルまでオートフィルでコピー! C3セルには =IFERROR(INDEX(Sheet1!A$2:A$1000,MATCH(SMALL(IF(MONTH(Sheet1!$B$2:$B$1000)=$C$1,Sheet1!$B$2:$B$1000),ROW(A1)),Sheet1!$B$2:$B$1000,0)),"") (これも配列数式です) として隣のD3セルまでコピー! B3・D3セルの表示形式を「日付」にして 最後にA3~D3セルを範囲指定 → D3セルのフィルハンドルで下へコピー! これで画像のような感じになります。 ※ 同一日がある場合は最初の行が重複して表示されると思います。m(_ _)m

関連するQ&A

  • エクセル(2003・2007)でデータ抽出し、別シートを作成するための

    エクセル(2003・2007)でデータ抽出し、別シートを作成するための関数を教えて下さい ●シート名:サンプルA                ●シート名:サンプルB   A  B    C   D  E・・        A  B     C   名前 日付1  日付2  備考      名前 日付1   備考 1 山田 2010/10/15 2010/10/10 ああ    1 鈴木 2010/10/18 うう 2 佐藤             いい       2 太田 2010/10/21 かか  3 鈴木 2010/10/18 うう     → 4 井上 2010/11/20 ええ 5 石田 2010/8/7 2010/10/7 おお 6 太田 2010/10/21 かか 具体的に上記のデータから【B列が本日から10日間以内かつC列がスペース】のデータのA・B・D行を別シートに作成する関数を教えて下さい よろしくお願いします ※なぜか文字がずれてしまってて、すいません・・・

  • 別シートの条件に合うセルを抽出したい

    例えば、sheet1に A列 B列   C列 1/1 東京  佐藤 1/1 横浜  鈴木 1/2 北海道 山田 1/3 大阪  加藤 と入力したとします。 このとき、sheet2のA1に1/1と入力すると、Sheeet2のA2、A3に1/1、B2、B3に東京、横浜、C2、C3に佐藤、鈴木と自動的に表示されるようにしたいのですがどうしたらよいのでしょうか?

  • 【エクセル】リストの照合について教えてください!!

    sheet1に、下記の様に600件の氏名が書いてあります。 A      B 1     山田太郎  2     鈴木花子 ・・・ 600   佐藤次郎 sheet2に、地域と氏名がずらっと書いてあります。 A      B      C     D    E 東京都   神奈川県   埼玉県   千葉県  茨城県 山田太郎 鈴木太郎 山田花子 佐藤次郎 ・・・ このsheet2の地域を、sheet1のC列に下記の様に入れたいのですが、 どの様に行ったら良いでしょうか? みなさんのお知恵をください!!宜しくお願い致します。 A      B      C 1     山田太郎   東京都 2     鈴木花子   神奈川県 ・・・ 600   佐藤次郎   埼玉県

  • エクセルで、シート1のセルをシート2にコピーしたい

    エクセルのシート別のコピーについて教えていただけますでしょうか。 シート1のA列には、下記の通り、氏名、学校、住所、電話番号の順番に、並んでいるとします。 <シート1> A1 山田太郎 A2 学校 A3 住所 A4 電話番号 A5 山田花子 A6 学校 A7 住所 A8 電話番号 A9 山田みどり A10 学校 A11 住所 A12 電話番号 その情報をシート2の A列に、氏名だけを下記の通り、入力していきたいのです。 <シート2> A1 山田太郎 A2 山田花子 A3 山田みどり シート別のコピーは、 例えば、シート2のA1に「=Sheet1!A1」 と入力すれば、「山田太郎」と出てくることは知っています。 ですが、シート1の『氏名』だけをシート2に抽出していきたい場合、 どのようにすればよろしいのでしょうか? 『4セルずつ下』の『氏名』をシート1からシート2へコピーしたいです。 どなたか方法を教えていただけますと、とてもありがたく助かる思いです。 どうぞよろしくお願いいたします!

  • 条件付き書式で別シートから参照させたい

    エクセルの条件付き書式について質問です。 Sheet1のデータを検索して別シートに結果を引っ張っています。 検索結果が男は”青”、女は”赤”、空欄は”灰”というパターンでセルの色が 変わるようにしたいのです。エクセルの本やネット検索で1つの答えを出しましたが、 「式が正しくありません」とエラーが出ます。どこが間違ってるのかわかりません。 どなたか教えていただければ助かります。宜しくお願い致します。   【Sheet1】     【Sheet2】    A  B C     A  1 山田太郎  男  1 山田太郎 ←青 2 田中花子  女  2 田中花子 ←赤 3        女 3       ←灰 4 鈴木二郎  男 4 鈴木二郎 ←青 Sheet2のA列には、=IF(Sheet1!$A1="","",Sheet1!$A1) Sheet2での条件付き書式で、 条件1 =COUNT(IF(INDIRECT("Sheet1!$A$1:$A$100")=A1,IF(INDIRECT("Sheet1!$C$1:$C$100")="男",))) 書式:青 条件2は"女"で赤となります。

  • EXCELで条件を満たす時コピー挿入したい

    EXCEL2002ですが、以下のようなデータがあるとします。      A      B 1    山田太郎 100 2    山田花子 100,200,300 3    鈴木一郎 300 B列にカンマ区切りで入力しているデータがある場合、      A      B 1    山田太郎 100 2    山田花子 100 3    山田花子 200 4    山田花子 300 5    鈴木一郎 300 上記のように、B列のカンマ区切り分を振り分けたレコードを新たに 挿入したいのです。 尚参考までに、A列は名前などでデータ内容は多様になり、B列は ある程度決まった選択肢(20~30通り)になります。 一般の関数では無理なような気がするのですが、VBAなどでは可能でしょうか? もし可能であれば、マクロなども組んだことがないものですから、 やさしくご教授いただければ幸いです。 よろしくお願いいたします。

  • 【エクセル関数】複数条件(月別・個人別)で集計したい

    例えば、以下のような表があるとします。 A        B       C 2005/10/12  山田一郎  5,000 2005/10/17  鈴木花子  1,000 2005/10/28  鈴木花子  2,000 2005/11/03  山田一郎  1,000 2005/11/17  山田一郎  2,000 2005/11/19  鈴木花子  4,000 これを、次のように仕訳したいのですが、      山田一郎  鈴木花子 10月  5,000     3,000 11月  3,000     4,000 どのような関数を使えばうまく集計することができますでしょうか? 自分なりに、SUMIFやSUMPRODUCTを使って考えてみたのですが、 うまく集計することができませんでした。 どうぞよろしくお願いします。

  • エクセルで同じ日に2回出勤したデータ数を数えたい

    同じ人が同じ日に2回出勤しているデータ数を知りたいです。 2 山田太郎 1/21 10:00 13:00 2 山田太郎 1/21 18:00 24:00 1 山田太郎 1/22 10:00 17:00 1 山田太郎 1/23 14:00 22:00 1 鈴木花子 1/21 10:00 17:00 1 鈴木花子 1/23 17:00 24:00 2 鈴木花子 1/24 10:00 15:00 2 鈴木花子 1/24 18:00 24:00 ↑のようなタイムカードがあります。 上の例だと、2もしくは4という数値がほしいです。 今までは図のようにA列に countifs関数を記入し、同一人物が同一日付に2回出勤 しているかをチェック、その数を数えていました。 今後は、 同一人物が同一日付に2回出勤している件数を1つの関数で知りたいと考えています。 ↑の例だと、4件 という数を1つの関数で出したいです。 どのようにすればよいのかアドバイスをお願いいたします。

  • エクセルでデータ抽出→並べ替え

    エクセルで   A列   B列   C列    D列  E列        4月1日 9:00 山田太郎   9:15   佐藤仁  4月1日 10:05 佐藤聡 10:00 鈴木正夫  4月1日 11:15 高橋二郎 11:00 山田勇        4月2日 9:05 渡邊正志 9:15 佐々木正夫        4月2日 10:00 山田太郎  10:15 佐藤仁         4月2日 11:02 佐藤仁   11:00 高橋二郎 という複数の営業マンの訪問予定表があります。この「山田太郎」さんに 月間の訪問予定表を発行したいと思っています。 ※発行対象は全員です。 関数でもマクロでも結構ですが、ご教授いただけると助かります。

  • 同じ文字列を抽出して新規シート作成

    A列~E列までデータが入力されています。 E列は所々、空白セルがあります。 1行目は見出しです。 元データのA列の中で同じ文字列を探して 見出しと該当するA~E列の行を新規シートとして作成。 その際、シート名はA列の文字列。 A列の文字列が2つ以上見つからなくても A列の文字列を新規シートにする。 最終行は常に変動します。 元データ (B列~E列は割愛) A-1 名前 A-2 鈴木 A-3 佐藤 A-4 鈴木 A-5 山田 A-6 佐藤 新規シート名 「鈴木」 A-1 名前 A-2 鈴木 A-3鈴木 新規シート名 「佐藤」 A-1 名前 A-2 佐藤 A-3 佐藤 新規シート名 「山田」 A-1 名前 A-2 山田 上記の事をマクロで実行させたいです。 ご指南の程、宜しくお願い致します。 エクセル2013