1

サブスクリプションを含む Google スプレッドシートがあります。そのスプレッドシートにクエリを実行して、有効期限が切れたサブスクリプションを確認する必要があります。インターネットで検索すると、次のコマンドを使用してスプレッドシートにクエリを実行し、特定の日付 (この例では 2016 年 2 月 16 日)以降に期限切れになるサブスクライバーを確認できることがわかりました。

=QUERY(Everyone!$A:$ZZ, "SELECT * WHERE H >= date '2016-02-16' ORDER BY H",-1)

(有効期限はH列です。)

問題の日付が特定のセル (この例では E2) にある場合、ここでもそれを行うことができます。

=QUERY(Everyone!$A:$ZZ, "SELECT * WHERE H >= date '" & text(E2,"yyyy-MM-dd") & "' ORDER BY H",-1)

有効期限が 2016 年 2 月 16 日より前のサブスクライバーを知りたいです。>=をに置き換えるだけでいいと思ったの<ですが、結果が返されません。(2016年より前の日付があることは知っています。)

だから私の質問:

Googleスプレッドシートでクエリを実行して、指定された日付より前のすべての日付を見つける方法は?

4

2 に答える 2

3

シートの下部を見ると、データが表示されます。問題は Order By にあります。H のヌル セルが最初に並べ替えられます。AND H IS NOT NULL を追加すると、これが解決するはずです。

=QUERY(Everyone!A:J, "SELECT * WHERE H < date '2016-02-16' AND H IS NOT NULL ORDER BY H",-1)

もう 1 つのオプションは、Everyone!A1:J16 という正確な行番号を持つことです。その後、空白のセルは問題になりません。

于 2016-01-11T03:01:04.193 に答える
0

フィルターを使用しないのはなぜですか?次のようなことができます

=filter(Everyone!$A:$ZZ, H4:H>H3)

// H3 には、選択した日付を入れます。

于 2016-01-11T07:25:09.853 に答える