• 締切済み

エクセルで別シートから条件付きで抽出する方法

エクセルの知識が乏しいのに、打ち込み量がとても多く困っています。 どうか皆さんのお知恵を貸してください。 イラストの販売管理をしています sheet1に下記のように入力されています。   A      B     C     D 1 作家名 販売日 オプション 価格  マージン価格 2 田中  2015/1/1   1    29800 20000 3 佐藤  2015/1/10   0    31500 10000 4 鈴木  2015/10/1  1    29800 15000 やりたいことは、上記データから別シートに日別に売上管理を作成することです。 作家によってマージン価格が異なる為 具体的には 2015/1/1に誰が幾ら、オプションは何個販売したかを表示したい sheet2に下記のように表示したいのです。   A      B     C     D 1 作家名 販売日 オプション 価格  マージン価格 2 田中  2015/1/1   1    29800 20000 3 鈴木  2015/1/1   1    29800 10000 4 佐藤  2015/10/10  0    31500 15000 分かりにくいかもしれませんが 今まで日別のマージン管理を手打ちでコピペしていたものを 自動化したいのです。 宜しくお願い致します。

みんなの回答

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

こんばんは! Sheet1とSheet2の日付が異なっていますが・・・ Sheet2に日付順にSheet1を表示したい!というコトでしょうかね? そうであれば、関数での一例です。 Excel2007以降のバージョンをお使いだという前提です。 ↓の画像のようにSheet1に作業用の列を設けます(実際は使っていない列に) Sheet1のG2セルに =IF(B2="","",COUNTIF(B:B,"<"&B2)+COUNTIF(B$2:B2,B2)) という数式を入れフィルハンドルでずぃ~~~!っと下へコピーしておきます。 Sheet2のA2セルに =IFERROR(INDEX(Sheet1!A:A,MATCH(ROW(A1),Sheet1!$G:$G,0)),"") という数式を入れE2までフィルハンドルでコピー! B2セルの表示形式は「日付」にしておきます。 最後にA2~E2セルを範囲指定 → E2セルのフィルハンドルで下へコピー! これで画像のような感じになります。m(_ _)m

すると、全ての回答が全文表示されます。
  • Cupper-2
  • ベストアンサー率29% (1342/4565)
回答No.1

元のデータがあるシートをまるっとコピーして(シートの複製) 複製したシートに対して日付で並び替えをやってみましょう。 ついでにフィルタを掛け、オプションが1以上の行だけを表示するように仕向ければOK。 ・・・じゃないかな? その後  Ctrl+Gで「ジャンプ」メニューを出し、(バージョンによってメニューの辿り方が異なるのでショートカットで呼び出しましたw)  「セル選択」を選んで、  「アクティブセル領域」を選んだら  コピー表示されているセルだけが選択されるので、そのままコピーして  新規に作ったシートに貼り付ければ 当初予定していたモノになりませんか? 試してみてください。 そんなわけで別にマクロや関数を使うまでもないと思うんです。 普通にExcelの機能だけでやれると思いますよ。

nigaoe-ns1
質問者

お礼

ご回答ありがとうございます。 早速、試してみようと思います。 ですが… 実は、毎日この作業を行うためもし自動化できるならとおもったのですが 今までのコピペ入力よりはずいぶんと楽になりました。 大変たすかりました。 有難うございます。

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

関連するQ&A