instr结合工作表事件统计小区数量

Sub main()
    With Sheet1
        str_name = .[n1]
        ar = .Range("a1").CurrentRegion
        For x = 3 To UBound(ar)
            If InStr(ar(x, 4), str_name) > 0 Then
                k = k + 1
            End If
        Next
        If k = 0 Then
            MsgBox "数据不存在,地址输入可能有误,请检查!"
        Else
        .[o1] = k
        End If
    End With
End Sub

Sub init()
    Set dic = CreateObject("scripting.dictionary")
    With Sheet1
        ar = .Range("a1").CurrentRegion
        For x = 3 To UBound(ar)
            dic(ar(x, 5)) = ""
        Next
    End With
    With Sheet2
        .Range("a1").Resize(dic.Count) = Application.Transpose(dic.keys)
    End With
End Sub

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Address = "$M$1" Then
Call init
End If
MsgBox "小区名称刷新成功!"
End Sub


Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$N$1" Then
Call main
End If
End Sub

 

 

posted @ 2022-11-18 08:47  依云科技  阅读(38)  评论(0)    收藏  举报