AIと戦って、あなたの人生のリスク診断 >>

エクセルの関数についてです、よろしくお願いします。

sheet1に以下の様なデータが何百行とあります。

A B C D E
日付  顧客名  品名  数量  金額


上記のsheet1のデータを基にsheet2へ抽出して転記する
ものを作りたいと考えています。

具体的に言いますと
sheet2のA1に2014/11/21、 B1に2014/12/20、
C1に ○○商店と入力するとその下に

A      B     C     D
日付   品名   数量 金額
2014/11/23  りんご 5 750
2014/11/28  みかん 2 300
2014/12/2   いちご 3 600
2014/12/10  りんご 5 750

sheet1のリストから該当するものを引っ張ってきて
sheet2へ表示させるものです

オートフィルタ等でなく、関数で出来ないでしょうか

お詳しい先生方よろしくお願いします。

A 回答 (1件)

こんばんは!



>お詳しい先生方
ではなく、そこらへんに転がっているおっさんですが・・・
おそらく、Sheet2のA1セル日付~B1セル日付内のC1セル(顧客名)のデータを表示したい!
というコトだと思いますので、

判りやすいのは↓の画像のように作業用の列を設ける方法だと思います。
画像ではSheet1のG2セルに
=IF(COUNTBLANK(Sheet2!A$1:C$1),"",IF(AND(A2>=Sheet2!A$1,A2<=Sheet2!B$1,B2=Sheet2!C$1),ROW(),""))
という数式を入れフィルハンドルでずぃ~~~!っと下へコピーしておきます。

そしてSheet2のA4セルに
=IFERROR(INDEX(Sheet1!$A:$E,SMALL(Sheet1!$G:$G,ROW(A1)),MATCH(A$3,Sheet1!$A$1:$E$1,0)),"")
という数式を入れD4セルまでフィルハンドルでコピー!
その後A4セルの表示形式は好みの日付にします。
最後にA4~D4セルを範囲指定 → D4セルのフィルハンドルで下へコピー!
これで画像のような感じになります。

※ 配列数式で作業列なしで可能ですが、データ量が極端に多い場合はおススメしません。
まずはこの程度で・・・m(_ _)m
「エクセルの関数についてです、よろしくお願」の回答画像1
    • good
    • 0
この回答へのお礼

こんばんは まずは返信ありがとうございます

今確認しましたが考えてた通りに出来ましたぁー素晴らしいです!!

そこらへんに転がってるおじ様では中々出来ないと思います
(私の周辺ではいませんでしたし(笑))

これで作業はかどりそうです、感謝致します。

先生、またよろしくお願いいたします。

お礼日時:2014/12/07 03:34

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング