【发布时间】:2020-04-09 14:18:09
【问题描述】:
该代码适用于第 3 列,但是当我为第 10 列添加额外的行时,它不起作用。我希望能够为同一个工作表上的几个不同列运行它。谢谢。
Private Sub Worksheet_Change(ByVal Target As Range)
selectedNa = Target.Value
If Target.Column = 3 Then
selectedNum = Application.VLookup(selectedNa, Worksheets("Risk Dropdowns").Range("B3:C30"), 2, False)
If Target.Column = 10 Then
selectedNum = Application.VLookup(selectedNa, Worksheets("Risk Dropdowns").Range("E3:F30"), 2, False)
If Not IsError(selectedNum) Then
Target.Value = selectedNum
End If
End If
End If
End Sub
【问题讨论】:
-
你的
End Ifs 放错地方了。如果您修复indentation,您将能够更好地查看逻辑流程。无论如何,Select Case在这里可能会更好。
标签: excel vba dropdown vlookup