Arrayformula, чтобы проверить, если столбец содержит текст и потяните число рядом с ним. Google Sheets - PullRequest
1 голос
/ 16 апреля 2020

В этом отчаянно нужна помощь! Не был уверен, как озаглавить этот вопрос ...

ОБРАЗЕЦ ЛИСТА - НАЖМИТЕ МНЕ! :)

В SupportingSheet!H1 У меня есть следующая формула:

=ArrayFormula(if(G1:G<>"", IF(DASHBOARD!N2<>"", G1:G/DASHBOARD!$P$2-filter(DASHBOARD!O1:O100,REGEXMATCH(DASHBOARD!N1:N100,E1:E100)),G1:G/(DASHBOARD!$M$3)),))

Часть, с которой я борюсь, это:

G1:G/DASHBOARD!$P$2-filter(DASHBOARD!O1:O100,REGEXMATCH(DASHBOARD!N1:N100,E1:E100))

Необходимо разделить два числа, а затем вычесть другое число. Я не могу получить эту формулу, чтобы получить правильное число. Нужно проверить, существует ли текст в E1:E100 в DASHBOARD!N1:N100, если да, взять номер из DASHBOARD!O1:O100.

Например, текст в SupportingSheet!E1 можно найти в DASHBOARD!N2, следовательно, ему нужно извлечь число из DASHBOARD!O2.

Столбец SupportingSheet!J имеет фактический конечный результат, который должна получить формула.

Не похоже, что Regexmatch работает как Arrayformula, и я не уверен, как go об этом.

Обратите внимание, что текст в SupportingSheet!E1:E не всегда идентичен. Часто в конце будет случайное число «пробелов» (длинная история ...). Вот почему Regexmatch был идеальным вариантом, пока я не понял, что он не работает.

Пожалуйста, дайте мне знать, если необходимы дальнейшие разъяснения.

Ниже приведено изображение случайных пробелов (непечатных символов) в конце.

enter image description here

1 Ответ

1 голос
/ 16 апреля 2020

использование:

=ARRAYFORMULA(IF(G1:G="",,IF(DASHBOARD!N2<>"", 
 IFNA(G1:G/DASHBOARD!$P$2-VLOOKUP(E1:E1000, DASHBOARD!N1:O100, 2, 0), 
 G1:G/DASHBOARD!$M$3))))

0

...