我在Excel中有一个表,Table1。 ColumnA中的值由公式而不是用户输入更改。当ColumnA中的值发生更改时,如果ColumnB值为null,则我希望使用与ColumnA相同的值填充ColumnB中的相应行。如何使用VBA实现这一点,我相信我需要使用Worksheet Calculate事件。
由于
答案 0 :(得分:0)
这至少会根据您的标准移动您的值。没有事件代码,还没有想出来......
Sub Macro1()
' Macro1宏 '
'初始化变量
Dim r As Range
Dim r1 As Range
Dim b As Range
'将范围设置为A列
设置r =表格(" Sheet1")。ListObjects("表1")。ListColumns(" ColumnA")。DataBodyRange
'将范围设置为B列
设置r1 =表格(" Sheet1")。ListObjects("表1")。ListColumns(" ColumnB")。DataBodyRange
' **遍历列中的每个单元格" B"并指定为A值,如果为0
对于每个b在r1.Cells
If b = 0 Then
b = Cells(b.Row, b.Column - 1)
End If
Next b
End Sub