我要做的就是让一个单元格显示其他两个单元格之间的增加/减少百分比。当其中有数值时,代码工作正常,但是在按下“重置”按钮(将单元格值设置为“-”)后,即使我将代码中的“-”场景都使用了,代码也无法正常工作:
Private Sub PerChange(ByVal burn1 As Range, burn2 As Range, change As Range)
If burn1.Value And burn2.Value = "-" Then
change.Value = "-"
Else
change.Value = (burn1.Value / burn2.Value) - 1
End If
End Sub
即使这两个值均为“-”,也会在粗线显示错误。
我还尝试将粗体换成:
**If IsNumeric(burn1.value and burn2.value) = False**
并且即使在IsNumeric的全部要点是检查非数字类型的情况下,它在此行上仍因TYpe不匹配而停止!
请指教,因为我正在拔头发...
这将起作用:
Private Sub PerChange(ByVal burn1 As Range, burn2 As Range, change As Range)
If burn1.Text = "-" And burn2.Text = "-" Then
change.Value = "-"
Else
change.Value = (burn1.Value / burn2.Value) - 1
End If
End Sub
经过测试:
Sub MAIN()
Call PerChange(Range("A1"), Range("A2"), Range("B1"))
End Sub
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句