• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルの関数で最新データの取得について)

エクセル関数で最新データを取得する方法

このQ&Aのポイント
  • エクセルで顧客毎の最新(直近)のデータを取得する方法について教えてください。
  • 売上データから顧客毎の直近リストを作成する方法を教えてください。
  • エクセルの関数を使って顧客毎の最新データを抽出する方法について教えてください。

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

  • ベストアンサー
  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.1

配列数式で次の方法は如何でしょうか。 AC1は、 =IF(COUNTIF($B:$B,$AA2),INDEX(C:C,SUMPRODUCT(($B$2:$B$6=$AB2)*($A$2:$A$6=$AA2)*(ROW($A$2:$A$6))))&"","") AD1は、 =IF(COUNTIF($B:$B,$AA2),INDEX(D:D,SUMPRODUCT(($B$2:$B$6=$AB2)*($A$2:$A$6=$AA2)*(ROW($A$2:$A$6))))&"","")

kururu_y
質問者

お礼

スゴイです!出来ました!! ずっとひとりで悩んでました。。 本当にありがとうございました。 あの・・・ 回答頂いてから計算式の意味を理解しようとするのですが、 知識が乏しくてよく分かりません。・゜゜・(>_<)・゜゜・。 単体ではなんとか使ったことのある関数なのですが ちょっとでも複雑になるとダメで。。 まして配列数式で頭こんがり中です。 甘えて申し訳ないのですが 簡単にで結構ですので意味を教えて頂けないでしょうか。 (特に最後の方の「&"",」部分等・・・) ご迷惑お掛けしてすみません。 どうぞよろしくお願い致します。

その他の回答 (1)

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.2

NO1です。以下に解説します。 (1)顧客名がない場合、該当セルを空白にする為、COUNTIF使用して有無を判定する様にしました。 (2)SUMPRODUCT内は、最新日付と顧客名と行番号をAND条件で確定したセルの行番号を取得しています。 仮に3行配列として2行目に条件一致とすると、  最新日付{1,1,1}  顧客名 {0,1,0}  行番号 {1,2,3}  上記の3要素を論理積すると結果が{0,2,0}となり、その和で2が戻される事になります。 この値がINDEX関数の行番号となり該当セルのデータを参照する事になります。 (3)&""は、INDEX関数の該当セルが空白だった場合、0表示を空白にする為です。 因みにSUMPRODUCT関数は、配列関数の為、入力完了時のshift+ctrl+enterは不要です。

kururu_y
質問者

お礼

続けて回答頂いてすみません。 有り難うございます。 すごくいい勉強になりました。 時間は掛かりましたがお陰で理解することができました。 応用できるよう頑張って行きたいと思います。 本当に有り難うございました。

関連するQ&A