Arrayformula检查列是否包含文本,并在其旁边拉出数字。 Google表格

问题描述 投票:0回答:1

迫切需要一些帮助!不确定如何为这个问题加上标题...

样本表-CLICK ME! :)

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一样工作,我不确定该怎么做。

请注意,SupportingSheet!E1:E中的文本并不总是相同的。通常,结尾处会有一个随机数的“空格”(长话说……)。这就是为什么Regexmatch是一个完美的选择的原因,直到我意识到它没有用。

请让我知道是否需要进一步说明。

下面是结尾处的随机空格(不可打印字符)的图像。

enter image description here

if-statement google-sheets google-sheets-formula array-formulas gs-vlookup
1个回答
0
投票

用途:

=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

© www.soinside.com 2019 - 2024. All rights reserved.