0

1. ヘッダーに「ターゲット」という単語を含む列を見つけます。(範囲 P1 から QI1 まで) 2. ヘッダーに「ターゲット」のない他のすべての列を削除します。

コード:

Sub Cleanup()
    Dim rng As Range
    With ActiveSheet.Range("P1:QI1")
        Set rng = ActiveSheet.Range("P1:QI1").Find(What:="target", _
            LookAt:=xlPart, MatchCase:=False)
        Do While Not rng Is Nothing
            rng.EntireColumn.Delete
            Set rng = .FindNext
        Loop
    End With
End Sub

上記のコードは、「ターゲット」という単語を含むすべての列を削除しています。私はそれを逆にしたいと思います。私はそれらの列を保持する必要があります。

前もって感謝します。

4

1 に答える 1

0

テスト済み-お楽しみください:)

Sub test()
Dim erange As Range
Dim str As String
    For Each erange In Range("A1:E1")
      If not erange.Value = "Target" Then
      '  If InStr(erange.Value, "Target") <> 0 Then
            If str <> "" Then
                str = str & "," & erange.EntireColumn.Address
            Else
                str = erange.EntireColumn.Address
            End If
        End If
    Next erange
str = Replace(str, "$", "")
' Delete columns in single shot
Range(str).Delete
End Sub
于 2013-10-28T07:14:54.743 に答える