我有一个电子表格,可以从外部源自动向其中添加新行。我正在使用hlookup查找价格在行(哪一列)的位置(所有价格均包含€符号)
=IF(B2="","",HLOOKUP("*"&"€"&"*",offers!K2:2,1,0))
我可以通过向下拖动公式来复制该公式,但是这种方式不会自动应用于新行。这就是为什么我尝试使用ARRAYFORMULA,但无法使其正常工作的原因。
如何结合使用ARRAYFORMULA和HLOOKUP(或替代方法),以便将公式也应用于所有新行?
答案 0 :(得分:0)
将此内容粘贴到A1中:
={""; ARRAYFORMULA(TRANSPOSE(SPLIT(CONCATENATE(IF(LEN(C2:C),
IF(REGEXMATCH(D2:G, "€"), D2:G&";", ), )), ";", 1, 1)))}
替代项:
=ARRAYFORMULA(IF(D2:D="", , VLOOKUP(ROW(A2:A), {ROW(A2:A), C2:H}, MMULT(COLUMN(B:G)*
ISNUMBER(FIND("€", C2:H)), TRANSPOSE(COLUMN(C:H)^0)), 0)))
=ARRAYFORMULA(IF(D2:D="", , MMULT(IFERROR(1*SUBSTITUTE(SUBSTITUTE(C2:H, "€", ""),
",", "."), 0)*ISNUMBER(FIND("€", C2:H)), TRANSPOSE(COLUMN(C:H)^0))))