简单vba问题

来源:百度知道 编辑:UC知道 时间:2024/09/28 13:27:45
因为只懂点vb的皮毛,所以vba只好问问各位行家里手了~~~
新建的Excel,需要有以下功能,都在sheet1内操作即可

1.当B列发生改动时,同行C列执行个简单公式
例如:c2=c1+B2 C3=C2+B3 C4=C3+B4
以此类推,当B列写入数据时,同行C列也发生改变
2当A1列数据为X时,同行B列不变化,当A1列写入数据为Y时,同行数据加入一个减号,以此类推A2,A3,A4...
忘高手指教~~~
感谢一楼的解答,写的很好了~~我稍微变化下就可以用了,万分感谢~~~

Private Sub Worksheet_Change(ByVal Target As Range)
Dim ro As Integer
Dim co As Integer
Dim i As Integer
ro = Target.Row
co = Target.Column
If Target.Column = 2 And Target.Row <> 1 Then
Cells(ro, 3).Value = Val(Cells(ro - 1, 3).Value) + Val(Cells(ro, 2).Value)
End If

i = 2
If Target.Column = 1 Then
Application.EnableEvents = False
If Cells(ro, 1).Value = "Y" Then
Do While Cells(ro, i).Value <> ""
Cells(ro, i).Value = "-" & Cells(ro, i).Value
i = i + 1
Loop
End If
Application.EnableEvents = True
End If
End Sub

不知道你说的事件1和2是不是相互关联的。希望能给你一些启发。