描述
在我的工作簿中有三张表,用户可以在其中输入或更改数据。
当前,当用户在列C中以下拉列表方式选择4个选项中的1个时,在列D中输出相应的值。然后,用户可以按照预期更改列D中的值。
我使用以下代码根据三个表中每个表中C列中的值自动更新D列中的值:
码
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 3
Call Macro1
End If
If Target.Column = 4
Call Macro2
End If
End Sub
问题/期望的输出
当用户更改C列中的特定/单个值时,只应更改D列中的相应值,而不是所有三个表中的整个列。
是否可以将自动更新限制为特定单元格?
(如果我需要上传C列和D列中生成的值的整个代码,请告诉我,以便为我提供提示/解决方案)。
您可以将代码添加到ThisWorkbook
模块以监控所有三张纸。
我不知道D列中的相应值应该是什么,所以这段代码只会将C列中的值复制到D列。
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Target.Column = 3 Then
'Column D is updated to show same value as col C.
Target.Offset(, 1) = Target.Value
End If
End Sub