top of page

​タグ一覧

配列処理(76)

シート・セル操作(37)

ファイル操作(33)

階層化フォーム(33)

開発事例(31)

図形操作(29)

設計思想(15)

ユーザーフォーム(12)

シフト表(12)

講座実施報告(12)

数学(11)

イベントプロシージャ(10)

開発効率化(10)

コード自動生成(10)

GAS(10)

技術解説(9)

ココナラ(9)

文字列操作(8)

Webアプリ(8)

Googleスプレッドシート(6)

その他(5)

アニメーション(5)

副業(5)

介護・福祉(5)

OneDrive(4)

条件付き書式(4)

イミディエイトウィンドウ(4)

クリップボード(4)

小説(3)

日報(3)

JavaScript(3)

PDF(3)

HTML(3)

公開ツール(3)

クラスモジュール(2)

コード解説(2)

パズル(2)

小ネタ(2)

フリーランス(2)

Antigravity(2)

カレンダー(2)

Enum(2)

医療(2)

LookerStudio(2)

リスキリング(2)

Discord(2)

Outlook(2)

デスクトップアプリ(2)

スクレイピング(1)

WebAPI(1)

PowerShell(1)

文書作成(1)

スプレッドシート(1)

経理(1)

超勉強会(1)

溶接ロボット(1)

楽天市場(1)

VBA不使用(1)

実行予約(1)

CAD(1)

給与計算(1)

QRコード(1)

python(1)

学校(1)

発注書(1)

崩れた条件付き書式をボタン1つで元どおりにする|Excel VBAの修復ボタン(シフト表ツールの実装例)

4 時間前
読了時間: 4分

まずは動画で、考え方と実際の画面をご覧ください(動画内のデータはサンプルです)。

条件付き書式の色分け、いつの間にか崩れていませんか。

この記事では、飲食店向けに納品したシフト作成ツール(Excel VBA)で使った工夫のひとつ、条件付き書式の「修復ボタン」を紹介します。シリーズの3本目です。1本目では「時間帯別の自動配置」、2本目では「ブックをまたぐ年間集計」を取り上げました。

 

条件付き書式は、使っているうちに崩れていく

シフト表では、出欠や勤務時間のマスを条件付き書式で色分けしておくと、ひと目で状況が分かります。ところが条件付き書式には、困った性質があります。

  • コピーや貼り付けを繰り返すうちに、ルールが細かく分かれていく

  • 同じ意味のルールが、適用先の範囲ごとにばらばらに増えていく

  • そのうち、色が付かないマスが出てくる

下の図は、そのイメージです。最初は3つだったルールが、使っているうちに適用先ごとに分かれて9つに増え、一部のマスには色が付かなくなっています。

コピーと貼り付けでルールが分かれていく

こうなると、Excelの「条件付き書式ルールの管理」を開いて、一つずつ直すのはかなり大変です。共有して使うExcelほど、この崩れは起きやすくなります。

 

ルールはコードで持ち、ボタンで付け直す

そこで、条件付き書式のルールをVBAのコードで持っておき、ボタン1つで付け直せるようにしました。ツールのシート上には「条件付き書式復活」というボタンを置いています。

やっていることは、次の2つだけです。

  1. 表のルールを、いったん全部消す(.FormatConditions.Delete)

  2. 決めたルールを、同じ順番で作り直す(数式で指定する条件付き書式)

ルールはコードで持ち、ボタンで付け直す

崩れたルールを一つずつ探して直すのではなく、「全部消して、正しいルールを作り直す」と割り切るのがポイントです。どれだけルールが分かれていても、ボタンを押せば毎回同じ状態に戻ります。

 

 

作り直すルール

このツールで作り直しているルールは、次のとおりです。

  • 出欠の列:「○」なら青、「×」ならオレンジ

  • 開始・終了の時刻の列:同じ行の出欠が「○」なら青、「×」なら灰色

  • 開始・終了の時刻の列:開始と終了の片方だけが入っていたら赤

時刻のマスは、自分の値ではなく、隣にある出欠のマスを見て色を決めています。数式で指定する条件付き書式では、条件に使うセルをずらして書くことで、このように「隣のマスを見て色を付ける」ことができます。

時刻のマスは隣の出欠を見る

開始と終了の片方だけが入っているマスを赤にしておくと、終了時刻の入れ忘れなどの入力漏れがひと目で分かります。色分けは見やすさのためだけでなく、入力のチェックにも使えます。

 

実際の画面

付け直したルールは、Excelの「条件付き書式ルールの管理」でも確認できます。

付け直したルールを管理画面で確認

管理画面には、次の3つのルールが並んでいます。

  • =F9="○"(青)

  • =F9="×"(灰色)

  • =AND(H9<>"",G9="")(赤)

どれも数式で指定するルールで、適用先には各日の時刻の列がまとめて入っています。ボタンを押すたびに、この形に作り直されます。

ツール全体の画面では、右上に「条件付き書式復活」のボタンがあります(データはサンプルです)。

シフト希望入力シートと条件付き書式ルールの管理

 

 

応用のヒント

壊れやすい設定をコードから作り直す考え方は、条件付き書式のほかにも使えます。

  • 入力規則(ドロップダウン):選択肢のリストを、範囲ごとに設定し直す

  • 印刷範囲・改ページ:行が増えても、印刷の設定を作り直す

  • 名前の定義・書式:崩れた表を、決まった形に戻す

ルールの「正解」をコードに残しておけば、いつでも同じ状態に戻せます。誰がどのように触っても、ボタン1つで元の形に戻せる安心感は、共有して使うExcelでは特に大きいと感じています。

壊れやすい設定はコードから作り直す

 

動画で見る

この記事の内容は、YouTubeでも紹介しています。

 

まとめ

  • 条件付き書式は、コピーや貼り付けを繰り返すうちにルールが分かれ、色が付かないマスが出てくる

  • ルールをVBAのコードで持ち、「全部消して、決めたルールを作り直す」ボタンを用意しておく

  • 時刻のマスは隣の出欠を見て色を付け、開始と終了の片方だけなら赤にして入力漏れを知らせる

  • 同じ考え方は、入力規則や印刷範囲など、ほかの壊れやすい設定にも使える

一つずつ直すのではなく、正しい状態をコードに残して作り直す。シンプルですが、長く使う業務ツールを安定させるうえで役に立つ考え方の一つです。

その作業、自動化できるかもしれません

毎月くり返している集計・転記・帳票づくりに何日もかかっていませんか。
Excelはそのままで、面倒な部分だけを自動化できます。ご相談は無料です。

softex-celwareロゴ 透過 横長.png

​インボイス登録番号:T5810983887134

  • Facebook
  • Twitter
  • YouTube

©2026 softex-celware。Wix.com で作成されました。

bottom of page