この記事ではFILTER関数において、日付を条件にデータを抽出する方法を解説します。
FILTER関数(スプレッドシート)の基礎は
こちらからアクセスできます。
日付を条件にする場合、FILTER関数の中でDATEVALUEを用いて日付を記した文字列を日付データに変換します。
DATEVALUE('yyyy-MM-dd') / DATEVALUE('yyyy/MM/dd')
以下の取引履歴を例に見ていきましょう。
例えば、取引の日付が2021年の4月1日以降のデータを抽出します。
取引履歴
今回は、全ての列を取り出したいので、見出しを除いた表の範囲であるA2からD9までを指定します。
=FILTER(A2:D9
表の範囲を指定
次に、日付の条件にするので、日付の列であるA列を指定します。
この際、表の範囲と高さが異なると、「FILTERの範囲サイズが一致しません」とエラーが表示されるので、同じ高さにするように気を付けましょう。
=FILTER(A2:D9,A2:A9
データ抽出に使う列を指定
最後に、4月1日以降という条件を書きましょう。DATEVALUE関数の中に文字を入れます。
=FILTER(A2:D9,A2:A9>=DATEVALUE("2021-04-01"))
条件を指定
すると、4月1日以降の取引である2つのデータが抽出されました。
結果
このように、FILTER関数において、日付を条件にデータを抽出する場合、DATEVALUEを用います。
また、日付データをセルに書いておいて、そのセルを抽出に使うこともできます。
下の例はE1に2021/04/01と日付でのデータを入れた場合の例です。
日付をセルに入れて参照する方法
この場合、参照先であるE1セルは、データ形式が「日付」になっている必要があることに注意して下さい。
文字列など別のデータ型になっている場合は上手くデータを抽出することはできません。
こちらの記事のスプレッドシートは
こちらからアクセスできます。