EXCEL自动计算存在的问题

来源:百度知道 编辑:UC知道 时间:2024/06/08 13:37:12
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
If Target.Column = 3 And Target <> "" Then
Target.Offset(, 1).Value = [$a$2] / [$b$2] * Target
End If
End Sub
上面的语句,可以很好的实现根据第3列数据,自动计算出第四列数据,不过存在这样的问题,如果第三列某些行数据,都是一样的,我可能要往下拖动,复制数据,这时,拖动的数据,后面对应行的第四列数据,为空,有什么好办法,加以解决呢,请大侠指点

Private Sub Worksheet_Change(ByVal my As Range)
On Error Resume Next
If my.Column <> 3 Then Exit Sub
For Each rng In Range([c1], [c65536].End(xlUp))
If rng <> "" Then rng(1, 2) = [$a$2] / [$b$2] * rng
Next
End Sub

为什么没用函数:在D2输入: =if(C2<>"",$a$2/$b$2*c2,"")