完了行を取り消し線で消す — チェックボックス×条件付き書式

実用テク

完了行を取り消し線で消す
チェックボックス × 条件付き書式で進捗を視覚化

チェックを入れると行全体に取り消し線が入り、文字がグレーになる。タスク管理・TODO表・チェックリストで「完了したことが一目でわかる」シートを作れる。

GASとの関係:onEditトリガーで自動書式変更

GASの onEdit(e) でチェックボックスの変更を検知し、range.setFontLine("line-through") で取り消し線を自動適用できます。チェックと同時にSlack通知・完了ログ記録も可能です。

GASで自動化を学ぶ →
目次

チェックボックスで取り消し線を引く設定

準備:チェックボックスを挿入

  1. A列を選択(A2:A100など)
  2. 「挿入」→「チェックボックス」

条件付き書式で取り消し線を設定

  1. 行全体に適用したい範囲を選択(例: A2:E100)
  2. 「表示形式」→「条件付き書式」
  3. 「カスタム数式」に以下を入力:
=$A2=TRUE
  1. 書式の設定で以下を行う:
    • テキストの取り消し線をON
    • 文字色をグレー(#9e9e9eなど)に変更

チェックを入れると行全体に取り消し線が入り、外すと元に戻ります。

ステータスのプルダウンと組み合わせる

// チェックボックスの代わりにプルダウンで「完了」を選んだら取り消し線
=$B2="完了"

完了行を下部に自動移動させるには

条件付き書式だけでは行の並べ替えはできません。完了行を下に移動させたい場合は以下の方法があります。

  • SORT + FILTER:別シートに完了行を下にしたビューを作る
  • GASのonEditトリガー:チェック時に行を自動移動
// GASで完了行を別シートに移動する例
function onEdit(e) {
 const sheet = e.source.getActiveSheet();
 if (sheet.getName() !== "タスク") return;
 if (e.range.getColumn() !== 1) return; // A列(チェックボックス)のみ
 if (e.value !== "TRUE") return;

 const row = e.range.getRow();
 const data = sheet.getRange(row, 1, 1, sheet.getLastColumn()).getValues();
 const doneSheet = e.source.getSheetByName("完了済み");
 doneSheet.appendRow(data[0]);
 sheet.deleteRow(row);
}

取り消し線のバリエーション

効果設定
取り消し線のみテキスト:取り消し線 ON
取り消し線 + グレーアウト取り消し線 + 文字色をグレーに
背景色を変更(完了行を薄緑に)取り消し線 + 背景色を薄緑に
文字を完全に隠す文字色と背景色を同じ色に(非推奨)

取り消し線 + 進捗カウンターの組み合わせ

// チェックが入った行数(完了件数)
=COUNTIF(A2:A100, TRUE)

// 進捗率
=TEXT(COUNTIF(A2:A100, TRUE)/COUNTA(B2:B100), "0%")

この知識をGASで活かす

GASのonEditトリガーと組み合わせると、チェックを入れた瞬間に「取り消し線を引く」「完了シートに移動する」「通知を送る」などを自動実行できます。手動での管理をゼロにする設計が実現します。

Free Newsletter

AIを業務に活かしたいなら
SMR-Labメルマガ

毎週火曜10時、コピペで使えるChatGPTプロンプト・
GASテンプレートをお届け。登録は1分・完全無料。

▶ 無料で登録する

📧 無料メルマガ登録

DX・AI活用のヒントを週1回お届け。登録特典:すぐ使えるプロンプト集&GASテンプレート。

登録情報は第三者に提供しません。いつでも配信停止できます。

目次