|
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用 · 内置多项VBA编程加强工具 ★ 免费下载 ★ ★ 使用手册★
不客气!请参考
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.CountLarge > 1 Then Exit Sub
If Target.Row > 3 And (Target.Column = 1 Or Target.Column = 2) Then
Set d = CreateObject("scripting.dictionary")
If Target.Column = 1 Then mystr = "" Else mystr = Target(1, 0)
Me.ListBox1.Clear
ListBox1.Visible = True
arr = Sheet2.[a1].CurrentRegion
For i = 2 To UBound(arr)
d(arr(i, 1)) = ""
Next
brr = Application.Transpose(d.keys)
With ListBox1
.Top = Target(2).Top
.Left = Target.Offset(, 1).Left
.Height = 110.25
.Width = 100
.Visible = True
End With
If Target.Column = 1 Then
For i = 1 To UBound(brr)
Me.ListBox1.AddItem brr(i, 1)
Next
End If
If Target.Column = 3 Then
For i = 2 To UBound(arr)
If InStr(arr(i, 1), mystr) > 0 Then Me.ListBox1.AddItem arr(i, 2)
Next
End If
Else
ListBox1.Visible = False
End If
End Sub |
评分
-
1
查看全部评分
-
|