- 帖子
- 234
- 主題
- 19
- 精華
- 0
- 積分
- 276
- 點名
- 0
- 作業系統
- Windows XP
- 軟體版本
- office 2003
- 閱讀權限
- 20
- 性別
- 男
- 註冊時間
- 2013-1-7
- 最後登錄
- 2021-10-7
|
回復 1# sillykin
試試看
Private Sub Worksheet_Change(ByVal Target As Range)
Dim d As Object
Set d = CreateObject("Scripting.Dictionary")
With Target
If .Row = 1 And .Column = 9 Then
Range([j2], [j2].End(4)).ClearContents
If .Value <> "" Then
Set a = Range([c1], [c1].End(2)).Find([I1], , , xlWhole)
For Each b In Range(Range(a.Address), Range(a.Address).Resize(Range("a1").End(4).Row))
If b = 1 Then d.Add b.Offset(, 2 - b.Column), ""
Next
[j2].Resize(d.Count) = WorksheetFunction.Transpose(d.keys)
Set d = Nothing
Else: Exit Sub
End If
End If
End With
End Sub |
|