コメント追加は「Excelに説明・注意書き・補足情報を埋め込み、使いやすいシートを作る」ための便利テクニック
Excel業務自動化では、セルにコメント(メモ)を追加する処理がとても役立ちます。
コメントを自動で付けておくと、次のようなメリットがあります。
- 入力者に注意点を伝えられる
- 数式の意味や計算ロジックを説明できる
- チェックポイントを残せる
- レビューコメントを自動で付けられる
Pythonの openpyxl を使えば、Excelのコメントを自由に追加できます。
初心者でも理解しやすいように、基本から実務テンプレートまで丁寧に解説します。
基本:セルにコメントを追加する(最もシンプル)
A1 にコメントを追加する
from openpyxl import load_workbook
from openpyxl.comments import Comment
wb = load_workbook("sample.xlsx")
ws = wb["Sheet1"]
comment = Comment("ここに入力してください", "システム")
ws["A1"].comment = comment
wb.save("sample.xlsx")
Python深掘りポイント
Comment("本文", "作成者")の形式- コメントはセルの
.commentプロパティにセットするだけ - Excel上では「赤い三角マーク」が表示される
- 入力フォームや注意書きに最適
コメントのサイズを調整する(読みやすくする)
コメントの幅・高さを変更する
comment = Comment("このセルには日付を入力します。形式は YYYY/MM/DD です。", "システム")
comment.width = 200
comment.height = 80
ws["B2"].comment = comment
Python深掘りポイント
- コメントはデフォルトだと小さくて読みにくい
widthとheightを指定すると見やすくなる- 長文コメントを付けるときに必須
既存コメントを上書き・削除する
コメントを上書きする
ws["A1"].comment = Comment("新しいコメント内容です", "更新者")
Pythonコメントを削除する
ws["A1"].comment = None
Python深掘りポイント
- コメントは「セルに1つだけ」
- 上書きは
.comment = 新しいコメント - 削除は
.comment = Noneとシンプル
複数セルにまとめてコメントを付ける(テンプレート作成に便利)
入力必須セルに同じコメントを付ける
from openpyxl.comments import Comment
required_comment = Comment("必須入力項目です", "システム")
for cell in ["B2", "B3", "B4"]:
ws[cell].comment = required_comment
Python深掘りポイント
- テンプレートの「入力必須欄」に一括でコメントを付けられる
- 入力ミス防止に効果的
条件付きでコメントを追加する(チェックロジックと組み合わせる)
数値がマイナスの場合にコメントを付ける
from openpyxl.comments import Comment
for cell in ws["C"]:
if isinstance(cell.value, (int, float)) and cell.value < 0:
cell.comment = Comment("マイナス値です。確認してください。", "チェック")
Python深掘りポイント
- データチェックとコメント追加を組み合わせると強力
- エラー箇所に自動でコメントを付けられる
- レビュー作業の自動化に最適
例題①:入力フォームに説明コメントを自動追加する
シナリオ
A列:日付
B列:担当者
C列:内容
ws["A1"].comment = Comment("日付を入力(YYYY/MM/DD)", "システム")
ws["B1"].comment = Comment("担当者名を入力", "システム")
ws["C1"].comment = Comment("内容を簡潔に記入", "システム")
Python解説
- 入力フォームの説明を自動で付けられる
- Excelを開いた人が迷わない
例題②:売上が0の行にコメントを付ける
from openpyxl.comments import Comment
for row in ws.iter_rows(min_row=2):
if row[2].value == 0: # C列が売上
row[2].comment = Comment("売上が0です。確認してください。", "自動チェック")
Python解説
- データチェックの自動化
- エラー箇所にコメントを付けることで視認性が上がる
例題③:レビューコメントを自動で付ける(実務でよく使う)
シナリオ
「未完了」の行にレビューコメントを付けたい
from openpyxl.comments import Comment
for row in ws.iter_rows(min_row=2):
if row[3].value == "未完了": # D列がステータス
row[3].comment = Comment("対応状況を更新してください", "レビューBot")
Python解説
- ステータス管理シートでよく使う
- コメントを自動で付けることでレビュー作業が効率化
コメント追加を業務で設計するときの視点
- コメントは「説明」「注意」「レビュー」に最適
.comment = Comment()だけで簡単に追加できる- 条件付きでコメントを付けるとチェック作業が自動化できる
- テンプレートにコメントを仕込むと入力ミスが激減する
- pandasではコメント操作ができないため openpyxl が必須

