|
发表于 2017-3-16 16:25
|
显示全部楼层
本楼为最佳答案
- Private Sub Worksheet_Change(ByVal Target As Range)
- If Target.Row < 3 Or Target.Column <> 5 Or Target.Count > 1 Then Exit Sub
- Application.EnableEvents = False
- If Len(Target) = 0 Then Target.EntireRow = ""
- arr = Sheet1.[a1].CurrentRegion
- Set d = CreateObject("scripting.dictionary")
- For i = 2 To UBound(arr)
- d(CStr(arr(i, 1))) = i
- Next
- i = d(CStr(Target.Value))
- If i > 0 Then
- Target.Offset(, 1) = arr(i, 4)
- Target.Offset(, 2) = arr(i, 9)
- End If
- Application.EnableEvents = True
- End Sub
复制代码 |
|