这是我的问题的简单版本:
我想将以下公式更改为数组公式...
原始公式(来自单元格J2):
=if(F4="VM:",G4,J1)
我试图转换为数组公式(在单元格K1中):
=arrayformula(if(row(A:A)=1,G3,if(F:F = "VM:",G:G,indirect("K"&row(A:A)-1))))
这在F =“ VM:”的行上有效,但在其他行上返回#REF错误。功能INDIRECT参数1的值为'K0'。这不是有效的单元格/范围参考。
关于如何解决此问题的想法?
我的问题的更复杂版本。即为什么我要尝试这样做?...
我有一个奇怪的电子表格,其中的数据确实应该存在于Wiki中。
我想为每个人创建过滤器视图,以便他们可以轻松地仅对自己的供应商进行过滤。原始公式会起作用,但是随着更多供应商的加入,我希望该公式也能自动应用于这些行。
如果有更好的方法,我在听。
答案 0 :(得分:1)
我不能完全理解您的需求,但是如果您想自动填充公式,则只需要在第4行中的desire列中使用此代码即可(您可以将其更改为其他任何代码-从这一点开始将自动填充) :
=ArrayFormula(if(F4:F="VM:",G4:G,J1:J))
这是您想要得到的吗?
仅在J2中需要此代码:
=ArrayFormula(VLOOKUP(ROW(J2:J),
QUERY({F:G,ROW(G:G)},"select Col3,Col2 where Col1='VM:'",1)
,2,1)
)
为您工作吗?
答案 1 :(得分:0)
也许您只需要隐藏错误?
=IFERROR(ARRAYFORMULA(IF(ROW(A:A)=1,G3,IF(F:F = "VM:",G:G,INDIRECT("K"&ROW(A:A)-1)))),)