如果公式结果为 0,则将单元格留空

Leave cell empty if formulas result is 0

我想让公式在没有值的情况下将单元格留空...当我 运行 这部分时它说有错误..我确定错误在

.Formula = "=IFERROR(E2*G2),"""")"

全部代码为

With Range("H2:H" & LastRow)
    .Formula = "=IFERROR((E2*G2),"""")"
    .Value = .Value
End With

也许这个

With Range("H2:H" & LastRow)
    .Formula = "=IF(E2*G2=0,"""",e2*g2)"
    .Value = .Value
End With

理想情况下,而不是

.Formula = "=IFERROR((E2*G2),"""")"

你应该使用

.Formula = "=IF(IFERROR((E2*G2),"""")=0,"""",IFERROR((E2*G2),""""))"

因为这将处理 Error 以及 0。因此,根据评论,您的公式将是

.Formula = "=IF(IFERROR(INDEX(I:I,MATCH(VALUE(A2),E:E,FALSE)),"""")=0,"""",IFERROR(INDEX(I:I,MATCH(VALUE(A2),E:E,FALSE)),""""))"