PythonでExcel作業の自動化、便利ですよね! openpyxlを使えば、データの読み書きは簡単にできます。でも、こんな風に思ったことはありませんか?
「このセルの値、どういう意味だっけ?」 「あとで確認するために、ちょっとしたメモを残しておきたいな…」
そんなとき、わざわざExcelファイルを開いて手作業でコメントを追加するのは少し面倒です。
この記事では、Pythonとopenpyxlを使って、Excelのセルに好きなメモ(コメント)を追加したり、編集したりする方法を、プログラミング初心者の方にも分かりやすく解説します。
この記事を最後まで読めば、あなたは…
- Pythonコードだけで、Excelセルにメモ(コメント)を追加できるようになる
- メモの作成者や内容を自由に設定できるようになる
- メモの大きさを好きなサイズに変えられるようになる
- スクリプトでメモの読み取りや削除もできるようになる
これまで手作業だったメモの追加作業を自動化して、あなたのExcel仕事をさらにスピードアップさせましょう! 🚀
はじめに:Excelのコメントは「セルに貼る付箋」です
Excelでセルを右クリックすると出てくる「コメント」機能。これは、セルに直接書ききれない補足情報や注意点を残しておける、まるで**「デジタルな付箋(ふせん)」**のようなものです。
openpyxlを使えば、この便利な付箋をPythonコードから自由に貼ったり、剥がしたりできるようになります。例えば、「合計が10,000円を超えたセルにだけ、『要確認』というメモを自動で付ける」なんてことも可能になるのです。
Commentクラスを使ってみよう
openpyxlでこの「付箋」機能を使うには、Commentという部品(クラス)を使います。
まずは、この部品を使うための準備として、openpyxlからCommentをインポートします。呪文のようなものだと思って、コードの最初に書いておきましょう。
from openpyxl.comments import Commentこれだけで準備OKです。
Excelセルにメモ(コメント)を追加する基本の3ステップ
実際にセルにメモを追加する手順は、たったの3ステップでとても簡単です。
- メモ(
Commentオブジェクト)を作る - どのセルに貼るか決める
- 実際にセルにペタッと貼る
では、具体的なコードを見ていきましょう。
サンプルコード:特定のセルにメモを追加する
以下のサンプルコードは、新しいExcelファイルを作成し、A1セルに簡単なメモを追加する一連の流れです。ぜひコピーして動かしてみてください。
import openpyxl
from openpyxl.comments import Comment
# --- 準備 ---
# 新しいExcelファイル(ワークブック)とシートを用意
wb = openpyxl.Workbook()
ws = wb.active
ws["A1"] = "自動化テスト"
# --- ここからが本番! ---
# ステップ1: メモ(Commentオブジェクト)を作る
# textにメモの内容、authorに作成者の名前を入れる
my_memo = Comment(text="このセルはプログラムで入力しました。", author="Pythonista")
# ステップ2&3: A1セルに作ったメモをペタッと貼る
ws["A1"].comment = my_memo
# --- 仕上げ ---
# ファイルを保存
wb.save("memo_sample.xlsx")
print("メモ付きのExcelファイルを保存しました。")このコードを実行すると、memo_sample.xlsxというファイルができます。開いてA1セルにマウスを合わせると、設定したメモが表示されるはずです。簡単ですよね?
もっと便利に!メモをカスタマイズしよう
openpyxlのすごいところは、ただメモを追加できるだけではありません。その見た目を自分好みにカスタマイズすることも可能です。
メモの大きさ(高さ・幅)を変える
メモの内容が長文になると、デフォルトの小さい箱では読みづらいことがあります。そんなときは、メモの**高さ(height)と幅(width)**を好きなサイズに変更しましょう。
# メモを作成
long_text_memo = Comment(
text="これは非常に長いメモです。デフォルトのサイズでは...\n改行しても見切れてしまうかもしれません。",
author="Mr. Custom"
)
# 高さと幅をピクセル単位で指定
long_text_memo.height = 100
long_text_memo.width = 300
# B3セルに設定
ws["B3"] = "長いメモ"
ws["B3"].comment = long_text_memoこのように、.heightと.widthに数字を入れるだけで、メモのボックスサイズを自由に調整できます。
既存のメモを読み書きする方法
すでにあるメモの内容を確認したり、不要になったメモを削除したりする方法も覚えておきましょう。
セルにあるメモの内容を読み取る
セルの.commentにアクセスすると、そこに貼られているメモの情報を取得できます。
# A1セルに貼られているメモを取得
retrieved_memo = ws["A1"].comment
# メモが存在するか確認してから、内容を表示
if retrieved_memo:
print(f"A1セルのメモ内容: {retrieved_memo.text}")
print(f"A1セルの作成者: {retrieved_memo.author}")セルにあるメモを削除する
メモが不要になったら、セルの.commentにNone(何もない、という意味)を設定するだけで、綺麗に削除できます。
# A1セルのメモを削除
ws["A1"].comment = Noneまとめ
今回は、プログラミング初心者の方でも分かるように、openpyxlを使ってExcelのセルにメモ(コメント)を追加・編集する方法を解説しました。
- メモの正体は
Commentクラス Comment(text="内容", author="作成者")でメモを作るws["A1"].comment = 作成したメモでセルに貼る.heightや.widthで大きさも変えられる.comment = Noneでメモを削除できる
この機能をマスターすれば、データ処理の結果に注釈を自動で付けたり、他の人への伝言をスクリプトで残したりと、活用の幅が大きく広がります。ぜひ、あなたのExcel自動化に役立ててくださいね!


コメント