0

VBA で小さなスクリプトを作成しました。Excel ワークシート ( sheet1) にデータがあり、特定の条件でフィルターを適用したいとします。列AJ:AJに「CUSTOMER」という単語が含まれている場合は、フィルター範囲B:Bまたはを適用しますElse Msgbox("Customer NA")。現在、以下のコードを使用していますが、Excel がフリーズしています。どんな助けでも本当に感謝しています。

Sub test()
    For i = 1 To 1048576
        Range("AJ" & i).Select
        ss = Len(ActiveCell.Value)
        For j = 1 To ss
            dd = StrConv(Mid(ActiveCell.Value, j, 8), vbProperCase)
            If dd = "Customer" Then
                check = 1
                check = 0
                Range("AJ1").Activate
                Selection.AutoFilter
                Selection.End(xlToRight).Select
                Range("AJ1").Select
                ActiveSheet.Range("$A$1:$AQ$37518").AutoFilter Field:=36, Criteria1:= _
                    "=*Customer*", Operator:=xlAnd
                Exit For
                check = 0
            Else
            End If
        Next j
        If check = 1 Then
            Exit For
        Else
        End If
    Next i
End Sub
4

1 に答える 1