いつものExcel作業はVBAを使えば数秒で終わるかもしれませんよ Range.FormatConditions.Addメソッド 条件付き書式の設定を行うにはRangeオブジェクトの条件付き書式を管理するFormatConditionsコレクションのAddメソッドを使い マクロVBAが遅い・重いという相談が非常に多いので、遅い・重いマクロVBAを高速化・速度対策する場合の具体的な手順をここに解説・検証します。マクロVBAの速度に関する記事は既にいくつか書いています。特に、以下はぜひお読みください。 条件付き書式をコピペするとルールが増えることは回避できない Excelの条件付き書式は自動で背景色を変えてくれたりする便利な機能ですが、対象セルをコピペすると条件付き書式のルールがどんどん増えて操作が重くなるという問題があります。 Excel VBA:高速化 >ループ内:書式の設定をまとめてする 概要 初めからセルに設定しておいて問題ないものは、事前に設定しておき、VBAで実装しない。 列単位(Columns(i))、行単位(Rows(i))、範囲(Range("Ai:Bi")で設定できるか Excel VBA を高速化する方法をまとめてみました。今回は「プロパティ編」です。このエントリーで記載しているサンプルコードは説明のためにあえて冗長にしてる部分もあります。ご自分のマクロに適した形に読み替えてご覧ください ))使わない機 Dim fc As FormatCondition Set fc = Range("A1").FormatConditions.Add(xlCellValue, xlBetween, "1", "20") ' 追加した条件付き書式を取得 Set fc = Range("A1").FormatConditions(1) ' 1 つ目の条件付き書式を取得 Set fc = Range("A1