Excel 2007 でセルの値に基づいて行を自動的に削除するにはどうすればよいですか?

Excel 2007 でセルの値に基づいて行を自動的に削除するにはどうすればよいですか?

Excel 2007 で、特定の値を持つセルがあるかどうかに基づいて行を自動的に削除したいと考えています。Google で検索しましたが、以前のバージョンの Excel の VBA スクリプトに関する古い情報しか見つからず、これまでのところすべて機能しません。これを行う方法について、SuperUser レベルの説明を求めています。

答え1

このマクロは、「fri」値を持つセルを含む行を削除し、セルを上に移動します。コード内の「FRI」を検索したい値に変更するだけです。また、値の入力を求めるように変更したり、別のセルの値を条件として使用したりすることもできます。

Sub DeleteThis()

For Each Rng In Selection.Rows
    If (Application.WorksheetFunction.CountIf(Rng, "fri") > 0) Then
        Rng.Delete Shift:=xlUp
    End If
Next Rng

End Sub

使用方法:データ範囲を選択し、マクロを実行します。

サンプル:
前:
ここに画像の説明を入力してください

後:
ここに画像の説明を入力してください

非VBA:Excel の高度なフィルターを使用して、特定の条件を満たす行を選択できます。ただし、シートの領域といくつかの追加手順が必要になる場合があります。

関連情報