Google Query Language не будет отображать диапазон, расположенный между двумя датами, указанными в ячейках - PullRequest
0 голосов
/ 08 февраля 2019

У меня есть запрос, извлекаемый из большого списка данных, и он работает, пока я не попытаюсь отфильтровать данные (диапазон Q) для двух диапазонов дат.

Я попытался изменить формат даты (гггг)/ мм / дд, гггг-мм-дд и т. д.), но все равно, похоже, не хочет работать.Значения $ E $ 6 и $ E $ 7 извлекаются из проверки данных, а диапазон Q берется из строки в формате дд / мм / гггг.

=QUERY('Deal Data'!A1:X999, 
 "select B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X 
  where ("&IF($E$8  = "All", , "D = """&$E$8&"""  and ") &
           IF($E$9  = "All", , "C = """&$E$9&"""  and ") &
           IF($E$10 = "All", , "U = """&$E$10&""" and ") " 
        Q >= date """&TEXT($E$6,"dd/mm/yyyy")&""" 
    and Q <= date """&TEXT($E$7,"dd/mm/yyyy")"""  and " &
        ("F = """&$E$11&""")"))

Формула работает, когда я исключаю данныедиапазон:

=QUERY('Deal Data'!A1:X999, 
 "select B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X 
  where ("&IF($E$8  = "All", , "D = """&$E$8&"""  and ") &
           IF($E$9  = "All", , "C = """&$E$9&"""  and ") &
           IF($E$10 = "All", , "U = """&$E$10&""" and ") & 
        ("F = """&$E$11&""")"))`

Результат, который я получаю, - #ERROR результат.

Любая помощь будет принята с благодарностью!

1 Ответ

0 голосов
/ 08 февраля 2019

так должен выглядеть запрос, если вы хотите запрашивать данные между датами

=QUERY(A2:B, "select * where A >= date '"&TEXT(C1, "yyyy-mm-dd")&"' 
                         and A <= date '"&TEXT(C2, "yyyy-mm-dd")&"'", 0)

...