• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルで条件付で行ごと別シートに引用?)

エクセルで条件付で行ごと別シートに引用

kagakusukiの回答

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.4

 もし、どうしても関数を使った方法で行いたい、というのでしたら、作業列も使わずに済ませる事も、一応は出来なくもありません。  まず先に、確認したいのですが、Sheet2とSheet3は、どちらも納品日を基準に表示する行を決めるのであって、受注日を基準にしてはいないのですね。  そして、表示させる行は、必ず「最終日から遡った1ヶ月間の期間内に、納品日がある行」と考えて宜しいのですね。  それでしたら、以下の様な方法は如何でしょうか。  まず、Sheet1のC列とD列のデーターの入力形式は、文字列ではなく、シリアル値として下さい。(シリアル値に関しては、「Microsoft Excel のヘルプ」を開いて、DAY関数の説明を御覧下さい)  その上で、Sheet2のE1セルに「〆日」と入力して下さい。  次に、Sheet2のE2セルに 2011/3/15 という具合に、期間の最終日の年月日を入力して下さい。  次に、Sheet2のD2セルに次の数式を入力して下さい。 =IF(ROWS($2:2)>COUNTIF(Sheet1!$D:$D,"<"&$E$2+1)-COUNTIF(Sheet1!$D:$D,"<"&DATE(YEAR($E$2),MONTH($E$2)-1,DAY($E$2)+1)),"",SMALL(Sheet1!$D:$D,ROWS($2:2)+COUNTIF(Sheet1!$D:$D,"<"&DATE(YEAR($E$2),MONTH($E$2)-1,DAY($E$2)+1))))  次に、Sheet2のA2セルに次の数式を入力して下さい。 =IF($D2="","",INDEX(Sheet1!A:A,SUMPRODUCT(ROW(OFFSET(Sheet1!$D$1,,,MATCH(9^9,Sheet1!$D:$D)))*(OFFSET(Sheet1!$D$1,,,MATCH(9^9,Sheet1!$D:$D))=$D2)*(COUNTIF(OFFSET(Sheet1!$D$1,,,ROW(OFFSET(Sheet1!$D$1,,,MATCH(9^9,Sheet1!$D:$D)))),$D2)=COUNTIF($D$1:$D2,$D2)))))  次に、Sheet2のA2セルをコピーして、Sheet2のB2~C2の範囲に貼り付けて下さい。  次に、Sheet2のC2セルとD2セルの書式設定を、「日付」にして下さい。  次に、Sheet2のA2~D2の範囲をコピーして、同じ列の3行目以下に貼り付けて下さい。  これで、Sheet2には、納品日が2/16~3/15の行の発注が表示されます。  次に、Sheet2のA列~E列の範囲を、一度にコピーして、Sheet3のA1セルに貼り付けるか、 或いは Sheet2のコピーSheetを作成して、必要があれば後からシート名をSheet3等に、適時変更して下さい。  そして、Sheet3のE2セルに 2011/4/15 と入力すると、Sheet3には、納品日が3/16~4/15の行の発注が表示されます。

kanichi1976
質問者

お礼

納品分=請求一覧としたかったのと、月末締めではなく15日締での集計です。 私の説明が少しわかりにくかったと思いますが、丁寧な回答ありがとうございました。

関連するQ&A

  • エクセル 別シートに反映

    入力用シートを作り    A    B     C     D    E 1  品名  申込日  申込者  住所   電話  2 ●    11/3   aaa ****** 123-456 3 ◆    11/30   bbb ****** 456-789 4  ▲    11/30   ccc   ****** 111-333 5 ◆ 12/1 aaa ****** 111-777 6 ▲    12/1   ttt   ****** 668-125 7 ●    12/2   ppp   ****** 555-779 と入力すれば シート●には    A    B     C     D       申込日  申込者  住所   電話  1 11/3   aaa ****** 123-456 2  12/2   ppp   ****** 555-779  シート◆には    A    B     C     D       申込日  申込者  住所   電話  1 11/30   bbb ****** 456-789 2  12/1 aaa ****** 111-777 同じ様にシート▲ と言う風に出来ないでしょうか?? よろしくお願いします

  • エクセルのVLOOK関数の基本がわかりません

    エクセルで下記のような表を作りたいのですがVLOOK関数とかを使えばいいと聞きました。 Helpで検索してもさっぱりわかりませんのでよろしくお願いします。   A列    B列   C列    D列    E列   F列   G列  1 日付   品番   品名    重量    大根   人参  白菜 2 1.10    11    大根    1000   1000 3 1.10    13    白菜    2000           2000 4 1.11    12    人参    750        750 5 1.12    13    白菜    500            500 ↑(1)B列に品番を入力したらC列に品名が自動的に表示される  (2)D列に入力したらそのデータがC列の品名により、それぞれ指定した列に自動的に表示される 以上のようなことができるようになりたいのです。よろしくお願いいたします。

  • エクセルで列ごとに入力されているデータを2列にまとめたい

    今データをこのように入力しています。   A  B  C   D   E 1       大根 白菜 人参 2       100 3           300 4               200 これを下記のように自動的に編集したいのです。   A   B  C  D  E 1 2 大根 100 3 白菜 300 4 人参 200 よろしくお願いいたします。                 

  • Excel集計方法を教えてください!

    以下のようなシートがあります。 シート(1) A列、B列、C列、D列、E列 品名、商品名、A店、B店、C店 --------------------- 果物、いちご、8個、7個、6個 果物、ぶどう、2個、8個、2個 野菜、大根、3個、3個、2個 野菜、人参、2個、5個、8個 野菜、白菜、1個、2個、0個 肉、牛肉、2個、5個、10個 それを、以下のシート(2)のように集計するには、 シート(2)の各B列、C列、D列にどのような数式を埋めればいいか教えてください!! シート(2) A列、B列、C列、D列 品名、A店、B店、C店 --------------------- 果物、10個、15個、8個 野菜、5個、10個、10個 肉、2個、5個、10個

  • エクセル 品目に対してシートの検索と書き出し

    エクセル2010です。 ある品目リストがあり、そこに別のいくつかのリスト(同じブック内のシート)から、品目が同じものがどのシートにあるか、というのを検索してそれぞれのセルに記録したいのです。 何の品目がどのシートに載っているかというリストの作成です。 例えば、メインの品目リストが  ごぼう  にんじん  はくさい  トマト  ほうれんそう  いちご というリストがあったとして、別のシートに、 (シートA)   (シートB)   (シートC) かぼちゃ    だいこん    ブロッコリー はくさい    きゅうり     カリフラワー にんじん    はくさい     すいか たまねぎ    なす      にんじん りんご      すいか     たまねぎ みかん     ピーマン    いちご となっているとします。 これに検索をかけ、メインの品目リストに別リストと重複している品目について、  ごぼう  にんじん シートA,シートC  はくさい シートA,シートB  トマト  ほうれんそう  いちご シートC という結果を書き出したいのです。 これを、メイン品目リストの全品目について、一気に検索と書き出しができないものでしょうか。 エクセルでこんなことができるのかどうかわかりませんが、なにせ品目は数百種類あるので、ひとつひとつ手動で検索して調べてるといつになるかわかりません。 マクロを使うやり方でも、一気にできなくてもできるだけ省力化できる方法などあれば、ぜひともご教授ください。 よろしくお願いします。

  • エクセルのシート1のある行をシート2に入力

    お世話になります。 エクセル2010を使っています。 たとえばシート1に、以下のような行があったとしましょう。     A       B       C    D 1(  1  )(2011/11/11)(にんじん)(100) ()はセルを表し、()内がセル内のデータです。 この行を、シート2に自動入力する方法を教えてください。 よろしくお願いします。

  • EXCELの2つのシートの照合処理マクロについて

    マクロが得意でなく下記の処理が可能かご教授いただければと お願いします。 ・シートAに自社の発注済みデータ ・シートBに発注先から送られてきた受注データがあります。 シートAの発注番号コードとシートBの受注番号コードが一致するので これを基にそれぞれのシートにある数量、単価、金額を照合し 一致しないレコードのみシートCにコピーさせる。 という流れなのですが、 ・それぞれのシートのコード、数量、単価、金額は別々の列にあります。 現在関数とオートフィルターで処理しているのですが効率が悪いため 改善するよう指示されて困っております。 よろしくお願いします。

  • エクセルの表を別のシートに縦に数行おきに書き移したい

    エクセルのSheet1  A商品名 B種別 C金額 D 説明 ・・・・ とまとめてあるデータを、別のシートの表に縦に数行おきに転記したいのです。たとえば sheet2の D3は空欄 D4にsheet1のA2 D5にsheet1のB2 D6にsheet1のC2 D7にsheet1のD2 D8にsheet1のE2 D9は空欄 そして、7行おきに違う商品のデータになり、繰り返します。 (A3~D9までを太いカラー罫線で囲んだフォーマットが商品個数分、空欄で既にsheet2に書き込まれています) 関数で効率よく、データを書き写すことが出来ますでしょうか? よろしくお願いいたします。

  • エクセルで、条件にあう複数の行を別のシートに抽出する

    《どなたか、お教え下さい》   エクセルで、条件にあう複数の行を別のシートに抽出してまとめる。 「sheet1」の下記の基本データを「sheet2」に「得意先」ごと「日付」の早い順にまとめたいのでが。関数を使ってできないものか、どなたかお教え下さい。「マクロ」や「Access」は使用したことがないので、関数を使ってやりたいと思いますが、できるものでしょうか。よろしくお願いします。 sheet1 番号 得意先 日付 商品名 商品詳細 金額 備考 1   A 2   B 2   B 4   D 5   E 6   F 2   B 3   C 5   E   A    B  番号  得意先   1   A      2   B   得意先名は、番号を入力することで表示されるように   3   C   関数「VLOOKUP」を使って表示させるようにしていま   4   D   す。    5   E   6   F  

  • エクセル関数:複数の条件の合う数値の合計

    可能かどうかもわかりませんが。。。 納品の量を管理するためにエクセルを利用したいと考えております。 Sheet1   A   B    C     D   E   ............ 1 出荷先 納品日 りんご みかん いちご ----------------------------------------- 2倉庫  12.01  10    0    5 3八百屋 12.02  0     4    3 4お店ア 12.05  3     2    8 5顧客A  12.03  3     5    0 6顧客B  12.05  0     15    0 7お店イ 12.02  2     2    2 . . . . >>>>>>>>>>>>>>>>> Sheet2 A    B    C    D  ............ 1納品日 りんご みかん いちご ----------------------------------------- 212.01 312.02 412.03 512.04 612.05 . . . Sheet1に入力した内容を、Sheet2で管理できないものかと考えております。 例:Sheet2のセルB2に「12月1日」の「りんご」の納品予定数を表示できないものでしょうか。即ち、Sheet1より「12月5日」の「みかん」の納品数は「2」+「15」で17と関数で計算する方法はないものでしょうか。 VLOOKUPやSUMIFSなどをが使えるのかとも考え、色々と調べてみましたが、どうしてもうまくいきません。 どうぞ宜しくお願い致します。