Перемещение событий календаря в Google Таблицах - PullRequest
1 голос
/ 05 августа 2020

У меня есть несколько календарей Google, на которые я подписан. В моей основной электронной таблице, на которой я выполняю большую часть своей работы, у меня есть страница запуска, на которой я хочу, чтобы события на сегодня и завтра извлекались из каждого календаря.

Данные извлекаются из Календаря Google и помещаются в скрытый лист под названием "Под капотом". Затем я использую следующий запрос, чтобы попытаться выбрать те, которые A) актуальны и B) происходят сегодня (или завтра, два разных запроса).

Сегодняшние события

=QUERY('Under The Hood'!M4:O13, "select M, N where M contains 'P/U' or M contains 'D/O' and toDate(O) contains 'toDate(TODAY())'",0)

Завтрашние события

=QUERY('Under The Hood'!M4:O13, "select M, N where M contains 'P/U' or M contains 'D/O' and O contains date'" & TEXT(TODAY()+1,"yyyy-mm-dd")&"'",0)

Оба этих запроса дают мне один и тот же частичный список событий завтра и послезавтра.

Ответы [ 2 ]

1 голос
/ 06 августа 2020

ваша формула должна быть:

=QUERY('Under The Hood'!M4:O, 
 "select M,N 
  where M matches '.*P/U.*|.*D/O.*' 
    and O contains date '"&TEXT(TODAY()+1, "yyyy-mm-dd")&"'", 0)

введите описание изображения здесь

1 голос
/ 06 августа 2020

Решение

Ваш оператор logi c прямо сейчас выглядит следующим образом:

M contains 'P/U' or (M contains 'D/O' and O contains date'" & TEXT(TODAY()+1,"yyyy-mm-dd")&"')

(вставлены явные скобки)

Это означает что он вернет истину, просто проверив, что M содержит 'P / U'.

Вы должны сформулировать свой оператор logi c таким образом, чтобы проверять:

M = 'P/U' and O = 'date you want' or M = 'D/O' and O = 'date you want'

To do это просто заключит логические операторы в столбцы M в круглые скобки, как рекомендовано в документации:

Вы можете объединить несколько условий, используя логические операторы and, or и not. Для определения явного приоритета можно использовать круглые скобки.

=QUERY('Under The Hood'!M4:O13, "select M, N where (M contains 'P/U' or M contains 'D/O') and O contains date '"& TEXT(TODAY(), "yyyy-mm-dd")&"'",0)

Ссылка

Язык запроса

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...