VBA脚本除以零

我试图在VBA中做一个公式,但是由于分母为零,我遇到了错误。 如果分母中有一个零,我希望活动单元被设置为零。 无论我做什么都不正确,我不是程序员。 我不知道我在做什么。 任何帮助将不胜感激。 这是我的

Range("H" & Row).Activate If Range("F" & Row) = 0 Then ActiveCell.Formula = 0 ActiveCell.Formula = Range("G" & Row) / Range("F" & Row) 

尝试使用其他

就像是

 Range("H" & Row).Activate If Range("F" & Row) = 0 Then ActiveCell.Formula = 0 Else ActiveCell.Formula = Range("G" & Row) / Range("F" & Row) End If 

你可以在公式中build立声明:

 For Row = 1 To 3 Cells(Row, "H").Formula = "=IF(F" & Row & "=0,0,G" & Row & "/F" & Row & ")" Next Row 

而不是使用循环…

 With Range("H2:H" & Cells(Rows.Count, "G").End(xlUp).Row) .Formula = "=IF(F" & .Row & "=0,0,G" & .Row & "/F" & .Row & ")" .Value = .Value End With 

我不推荐Cor_Blimey或tigeravatar推荐 – 这两个代码都不太可读。 Cor_Blimeybuild议使用行连续字符“_”和语句字符“:”的结尾不加代码的简洁性,在逻辑上与上面的代码相同。 Tigeravatar正处于正确的轨道上,暗示着这个单元本身处理错误案件,但是他的代码build议使得所有事情都变得更加难以阅读。

我build议的更改是完全删除VBA,并在H列中的单元格中使用以下公式进行计算:

 =IfError(G1/F1,0) 

这将工作,因为您的计算中没有使用工作表中已有的值。