If statement Arrayformula,用于检查列是否包含文本,并提取列旁边的数字。谷歌表单

If statement Arrayformula,用于检查列是否包含文本,并提取列旁边的数字。谷歌表单,if-statement,google-sheets,google-sheets-formula,array-formulas,gs-vlookup,If Statement,Google Sheets,Google Sheets Formula,Array Formulas,Gs Vlookup,在这方面急需帮助! 我不知道该如何命名这个问题 样本表- 在支持表中!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)),)) 它需要将两个数字相除,然后再减去另一个数字。我似乎无法用这个公式得出

在这方面急需帮助! 我不知道该如何命名这个问题

样本表-

支持表中!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)),))
它需要将两个数字相除,然后再减去另一个数字。我似乎无法用这个公式得出正确的数字。 需要检查
E1:E100中的文本是否存在于
仪表板中!N1:N100
,如果是,请从仪表板中拔出号码!O1:O100

例如,
SupportingSheet中的文本!E1
可在仪表板中找到!N2,因此它需要从仪表板中提取编号!氧气

支持表!J
具有公式需要产生的实际最终结果

看起来Regexmatch不像Arrayformula那样工作,我不知道该怎么做

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

如果需要进一步澄清,请告诉我

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

使用:

=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))))
=ARRAYFORMULA(IF(G1:G=”“,)IF(DASHBOARD!N2”“,),
IFNA(G1:G/仪表板!$P$2-VLOOKUP(E1:E1000,仪表板!N1:O100,2,0),
G1:G/仪表板!$M$3)

这个公式非常有效,但是,还有一个问题使这个公式稍微无法使用。在列SupportingSheet中的文本末尾通常有随机数量的不可打印字符(即空格)!E.因此,查找并不总是与列支持表中的文本匹配!E和仪表板!有办法解决这个问题吗。我无法在源位置更改数据以删除那些不可打印的字符。我添加了一个图像来显示我的意思@player0try:
=ARRAYFORMULA(IF(G1:G=”“、IF(DASHBOARD!N2“”、IFNA(G1:G/DASHBOARD!$P$2-VLOOKUP(TRIM(E1:E1000)){TRIM(DASHBOARD!N1:N100)、DASHBOARD!O1:O100},2,0)、G1:G/DASHBOARD!$M$3))
=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))))