Чтение критериев массива из ячейки в Google Sheets

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

С ключевыми словами, явно определенными в уравнении, как показано ниже, я вижу соответствующее количество найденных совпадений.

ArrayFormula(sum(countifs('Estimates Booked'!C:C, {"*angi*", "*homeadvisor*"})))

Однако, когда я сохраняю массив ключевых слов в ячейке и ссылаюсь на ячейку, совпадений не найдено.

ArrayFormula(sum(countifs('Estimates Booked'!C:C, 'Lead Source Keywords'!A1)))

Есть ли способ сохранить этот массив ключевых операций в ячейке, чтобы его можно было легко обновлять в нескольких уравнениях?

Пожалуйста, используйте соответствующие теги, в данном случае Google Sheets.

JvdV 23.04.2022 07:58

Отвечает ли это на ваш вопрос? Excel: поиск нескольких терминов в ячейке. Из Ваш ответ похоже, что да. Если это так, этот вопрос следует закрыть как дубликат, чтобы исходный вопрос имел приоритет.

Jeremy Caney 23.04.2022 21:07

@JeremyCaney Да, это действительно отвечает на вопрос, который я изначально задал. Я полагал, что листы Google будут работать так же, как Excel, но это не так. У меня все еще есть проблема, так как в таблицах Google нет функции evaluate, которая есть в Excel. Я согласен, что этот вопрос должен быть закрыт как дублирующий/плохо сфокусированный.

Josiah Lund 23.04.2022 21:26

С обновленными тегами и заголовком эта проблема связана со связанным решением Excel, но теперь это отдельный вопрос, относящийся к таблицам Google.

Josiah Lund 24.04.2022 20:45
Работа с датами и временем в языке Java
Работа с датами и временем в языке Java
Работа с датами и временем в языке Java была сильно переработана начиная с версии Java 8 и далее с появлением библиотеки java.time.
1
4
63
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

если это должно быть в одной ячейке, попробуйте:

=COUNTA(IFNA(FILTER('Estimates Booked'!C:C, 
 REGEXMATCH('Estimates Booked'!C:C, REGEXREPLACE('Lead Source Keywords'!A1, ",", "|")))))

где «Ключевые слова источника потенциальных клиентов»! A1 =

angi,homeadvisor

Обновить:

=COUNTA(IFNA(FILTER(E:E, F:F>=TODAY(), 
 REGEXMATCH(E:E, REGEXREPLACE(REGEXREPLACE(B2, "[\{\} ""]", ), ",", "|")))))

или просто используйте:

=SUMPRODUCT(F:F>=TODAY(), REGEXMATCH(E:E, "(?i)"&B3))

Спасибо за ответ. Я потратил некоторое время, пытаясь реализовать это, но пока безуспешно. Я считаю, что это ближе к правильному, но все еще оценивается как #ERROR. =COUNTA(IFNA(FILTER('Estimates Booked'!C:C, Estimates Booked'!C:C=REGEXREPLACE('Lead Source Keywords'!A1, ",", "|")))) Я попал сюда, жестко закодировав критерии как: =COUNTA(IFNA(FILTER('Estimates Booked'!C:C, Estimates Booked'!C:C = "angi"))) К сожалению, даже если бы это сработало, это не решило бы мою проблему, поскольку я ищу ключевые слова в тексте, используя подстановочные знаки, которые фильтр не поддерживает.

Josiah Lund 23.04.2022 16:31

Спустя немного времени у меня теперь есть что-то, что использует фильтры и поиск по подстановочным знакам. Единственное, чего мне не хватает, так это того, как использовать REGEXREPLACE для более динамичного заполнения критериев. Я также добавил фильтр даты, который я изначально не задавал для простоты. =COUNTA(FILTER('Estimates Booked'!C:C, isnumber(search("angi", 'Estimates Booked'!C:C))*('Estimates Booked'!D:D>TODAY())))

Josiah Lund 23.04.2022 16:52

@JosiahLund, можете ли вы поделиться копией / образцом своего листа с примером желаемого результата?

player0 23.04.2022 21:22

Конечно. Вот пример, который показывает уравнение, которое у меня есть, и то, что я хотел бы с ним сделать. docs.google.com/spreadsheets/d/…

Josiah Lund 23.04.2022 21:33

Лист @JosiahLund является частным

player0 23.04.2022 21:41

разрешения были обновлены на листе.

Josiah Lund 23.04.2022 21:49

@ДжосияЛунд docs.google.com/spreadsheets/d/…

player0 23.04.2022 22:01

После дополнительного поиска на этот вопрос уже был дан ответ в https://stackoverflow.com/a/59421784/12926358 с помощью функции EVALUATE. Эта функция не существует в таблицах Google.

Другие вопросы по теме