セルの書き込みとスタイル設定
スプレッドシートを作成して書式設定します
「セルの書き込みとスタイル設定」はCoddyKit上の無料Python Academyレッスンです。 これはレッスン2/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはPython Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Python Academyコースには全4レッスンが含まれています。
スプレッドシートを作成する
読み取りだけでなく、openpyxl ではスプレッドシートをゼロから作成できます。値を書き込み、セルをフォーマットし、スタイルを適用して、出力をそのままの状態ではなくプロフェッショナルな見た目に整えられます。
このレッスンでは、データの書き込みとフォーマットの適用について説明します。
新しいワークブック
Workbook() は、シートを 1 つ含む空のワークブックを作成します。ws = wb.active でそのシートを取得し、必要に応じて ws.title = 'Report' で名前を変更します。
wb.create_sheet('Details') でシートを追加できます。
値を書き込む
セルには直接代入できます。たとえば ws['A1'] = 'Name' や ws.cell(row=1, column=1, value='Name') のように記述します。最下部に行全体を追加するには、ws.append([...]) を使います。
append パターンは、表を 1 行ずつ書き込むのに適しています。
header = ['Name', 'Score']
data = [['Ada', 95], ['Linus', 88], ['Grace', 99]]
print('append:', header)
for row in data:
print('append:', row)ファイルを保存する
wb.save('report.xlsx') を呼び出すまで、ディスクには何も書き込まれません。保存し忘れることは、初心者が最もよくするミスです。最後の書き込みが終わったら、必ず保存してください。
フォント
スタイルには、openpyxl.styles の小さなスタイルオブジェクトを使います。Font(bold=True, size=14, color='FF0000') を cell.font に割り当てると、テキストが太字になり、サイズが大きくなって赤色で表示されます。
色は 8 文字の ARGB 16 進数文字列で指定します。
alpha = 'FF'
rgb = '0000FF'
argb = alpha + rgb
print('Blue, fully opaque:', argb)塗りつぶしと背景色
PatternFill(start_color='FFFF00', fill_type='solid') を cell.fill に設定すると、セルの背景が塗りつぶされます。たとえば、ヘッダー行を黄色で強調できます。塗りつぶしを使うと、重要な部分に目を向けさせられます。
配置
Alignment(horizontal='center', vertical='center', wrap_text=True) を cell.alignment に設定すると、テキストが中央揃えになり、長い内容がセル内で折り返されます。適切に配置すると、表が読みやすくなります。
罫線
罫線は、Side オブジェクトを Border でまとめて作成します。4 辺すべてに細い罫線を設定すると、セルの輪郭を囲めます。同じ罫線を範囲に適用すると、整ったグリッドを作成できます。
表示形式
cell.number_format で数値の表示方法を設定できます。たとえば '#,##0.00' は桁区切り付きの小数点以下 2 桁、'0%' はパーセント表示にします。保存される値は変わらず、表示だけが変わります。
value = 1234567.5
formatted = format(value, ',.2f')
print('Stored:', value)
print('Displayed:', formatted)列幅とセル結合
ws.column_dimensions['A'].width = 20 で列幅を設定できます。タイトルバナーを作るには、ws.merge_cells('A1:D1') でセルを結合します。こうした仕上げにより、手作業で作ったような見た目になります。
スタイルオブジェクトを再利用する
Font や PatternFill などのスタイルオブジェクトは、一度作成して多くのセルに適用できます。ヘッダースタイルを定義し、ヘッダー行をループして各セルに割り当てます。これにより、フォーマットの一貫性を保ちながらコードを短くできます。
セルごとにスタイルを作り直すのではなく、再利用可能な定数のように扱いましょう。
クイックチェック
書き込みとスタイリングに関する知識を確認しましょう。
まとめ
これでスタイル付きのスプレッドシートを作成できるようになりました。
Workbook()、wb.active、create_sheet、ws.append- 最後には必ず
wb.save(path)を実行する openpyxl.stylesのFont、PatternFill、Alignment、Borderでスタイルを設定する- 表示には
number_formatを使い、列幅とmerge_cellsも設定する
よくある質問
「セルの書き込みとスタイル設定」レッスンは無料ですか?
はい。「セルの書き込みとスタイル設定」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Python Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Python Academyコースには全4レッスンが含まれています。
「セルの書き込みとスタイル設定」で何を学びますか?
スプレッドシートを作成して書式設定します ブラウザで直接実行するハンズオンコードでPython Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Python Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのPython Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン2/4です。
「セルの書き込みとスタイル設定」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このPython Academyレッスンでコードを書いて実行できますか?
はい。すべてのPython Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- ワークブックの読み込み
- セルの書き込みとスタイル設定
- 数式とグラフ
- レポートのバッチ処理