Excel表值更改

时间:2017-11-11 02:55:31

标签: excel excel-vba vba

我在Excel中有一个表,Table1。 ColumnA中的值由公式而不是用户输入更改。当ColumnA中的值发生更改时,如果ColumnB值为null,则我希望使用与ColumnA相同的值填充ColumnB中的相应行。如何使用VBA实现这一点,我相信我需要使用Worksheet Calculate事件。

由于

1 个答案:

答案 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