📘 Excel逆引き事典

【VBA】可視セル(フィルタ結果)を確認メッセージを出さずに背景色を変える方法

日々の業務では、大量のデータの中から特定の項目だけを抽出し、その目立たせたいですよね?この記事では、フィルタリングされたセルの背景色を一括で変更する方法を紹介します。確認メッセージが出ることなく、高速に処理を完了させます。

サンプルコード

VBA
Option Explicit
Sub ChangeVisibleCellsBackgroundColor()
    Dim ws As Worksheet
    Set ws = ThisWorkbook.Sheets("Sheet1")
    
    Application.ScreenUpdating = False '画面更新停止
    Application.DisplayAlerts = False '警告オフ
    
    With ws.UsedRange.SpecialCells(xlCellTypeVisible)
        .Interior.ColorIndex = 6 '背景色を変更(ここでは青に設定)
    End With
    
    Application.ScreenUpdating = True '画面更新再開
    Application.DisplayAlerts = True '警告再開
End Sub

よくある質問

Q 元に戻せますか?

A.
VBAの実行結果は「元に戻す」が効きません。必ずバックアップを取ってから実行してください。

Q エラーが出たら?

A.
シート名や列番号が正しいか確認してください。