Excel VBA下拉列表和vlookup问题

我试图做一个VBA代码,将创build一个下拉列表或在一个单元格中有一个Vlookup函数。 我是VBA的新手,所以请有怜悯。 :)问题是,下面的代码总是崩溃的Excel。

Private Sub Worksheet_Change(ByVal Target As Range) Dim Lookup_Range As Range Set shList = ThisWorkbook.Sheets("ListaEchipamente") Set Lookup_Range = shList.Range("G10", "M345") If Cells(Target.Row, 13).Value = " " Then With Range("J2:J100").Validation .Delete .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, _ Operator:=xlBetween, Formula1:="=ListaEchipamente!K10:K345" .IgnoreBlank = True .InCellDropdown = True .InputTitle = "" .ErrorTitle = "" .InputMessage = "" .ErrorMessage = "" .ShowInput = True .ShowError = True End With ElseIf Not Cells(Target.Row, 13).Value = " " Then Cells(Target.Row, 10).Value = "=VLookup(Range(target.row, 13), Lookup_Range, 2, False)" End If End Sub 

感谢您的帮助。

您的代码更改Cells(Target.Row, 10).Value触发另一个更改事件,并且您得到无限循环。 为了避免它首先禁用事件:

 Application.EnableEvents = False 'code to modify cells here Application.EnableEvents = True