<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Excel操作  |  Python-memo｜自動化・AI・Web開発の実験室</title>
	<atom:link href="https://python.cbagames.jp/tag/excel%e6%93%8d%e4%bd%9c/feed/" rel="self" type="application/rss+xml" />
	<link>https://python.cbagames.jp</link>
	<description>Pythonで、できるをふやそう。</description>
	<lastBuildDate>Sun, 01 Feb 2026 08:43:25 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.1</generator>

<image>
	<url>https://python.cbagames.jp/wp-content/uploads/2025/06/cropped-497d491d54402de785c9e043bfa0620a-32x32.png</url>
	<title>Excel操作  |  Python-memo｜自動化・AI・Web開発の実験室</title>
	<link>https://python.cbagames.jp</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Pythonで為替レートを自動取得してExcelに保存する方法【初心者向け】</title>
		<link>https://python.cbagames.jp/2025/06/18/python-exchange-rate-to-excel/</link>
					<comments>https://python.cbagames.jp/2025/06/18/python-exchange-rate-to-excel/#respond</comments>
		
		<dc:creator><![CDATA[asukapy]]></dc:creator>
		<pubDate>Wed, 18 Jun 2025 03:32:14 +0000</pubDate>
				<category><![CDATA[自動化スクリプト]]></category>
		<category><![CDATA[API連携]]></category>
		<category><![CDATA[Excel操作]]></category>
		<category><![CDATA[openpyxl]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[requests]]></category>
		<category><![CDATA[為替レート]]></category>
		<category><![CDATA[自動化]]></category>
		<guid isPermaLink="false">https://python.cbagames.jp/?p=379</guid>

					<description><![CDATA[目次 はじめに｜Pythonで為替レートを自動取得するってどういうこと？1. Pythonで為替データを扱うメリット✅ 毎日の作業が自動化できる✅ 無料APIを活用して最新データを取得✅ 取得したデータをそのままExce [&#8230;]]]></description>
										<content:encoded><![CDATA[

  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-2"><label class="toc-title" for="toc-checkbox-2">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">はじめに｜Pythonで為替レートを自動取得するってどういうこと？</a></li><li><a href="#toc2" tabindex="0">1. Pythonで為替データを扱うメリット</a><ol><li><a href="#toc3" tabindex="0">✅ 毎日の作業が自動化できる</a></li><li><a href="#toc4" tabindex="0">✅ 無料APIを活用して最新データを取得</a></li><li><a href="#toc5" tabindex="0">✅ 取得したデータをそのままExcelに保存</a></li><li><a href="#toc6" tabindex="0">✅ 業務でも通用するスキルが身につく</a></li></ol></li><li><a href="#toc7" tabindex="0">2. 必要な環境とライブラリ</a><ol><li><a href="#toc8" tabindex="0">🔧 Python仮想環境の作成</a><ol><li><a href="#toc9" tabindex="0">✅ なぜ仮想環境を使うの？</a></li><li><a href="#toc10" tabindex="0">✅ 仮想環境の作り方（Windows/Mac共通）</a></li><li><a href="#toc11" tabindex="0">✅ 仮想環境の起動方法</a></li></ol></li><li><a href="#toc12" tabindex="0">📦 ライブラリのインストール</a><ol><li><a href="#toc13" tabindex="0">✅ インストールコマンド（仮想環境の中で実行）</a></li><li><a href="#toc14" tabindex="0">✅ ライブラリのインポート方法</a></li></ol></li></ol></li><li><a href="#toc15" tabindex="0">3. 為替APIの仕組みとエンドポイント設定</a><ol><li><a href="#toc16" tabindex="0">🌐 APIってなに？</a></li><li><a href="#toc17" tabindex="0">💱 為替APIとは？</a></li><li><a href="#toc18" tabindex="0">📌 エンドポイントって？</a></li><li><a href="#toc19" tabindex="0">✅ 通貨を指定したい場合は？</a></li></ol></li><li><a href="#toc20" tabindex="0">4. APIから為替レートを取得するPythonコード</a><ol><li><a href="#toc21" tabindex="0">🧪 まずはAPIにアクセスしてみよう！</a></li><li><a href="#toc22" tabindex="0">🔍 解説：このコードで何をしているの？</a></li><li><a href="#toc23" tabindex="0">💡 JSON形式のデータとは？</a></li><li><a href="#toc24" tabindex="0">✅ 必要な情報だけ取り出すには？</a></li></ol></li><li><a href="#toc25" tabindex="0">5. 取得したデータをExcelに書き込む</a><ol><li><a href="#toc26" tabindex="0">📘 Excelファイルを作るには？（Workbook）</a></li><li><a href="#toc27" tabindex="0">🏷️ ヘッダーを追加する（append）</a></li><li><a href="#toc28" tabindex="0">🔄 通貨とレートを1行ずつ追加（forループ＋append）</a></li><li><a href="#toc29" tabindex="0">✅ append()とは？</a></li><li><a href="#toc30" tabindex="0">💡 補足：複数回appendすれば、表形式になる</a></li></ol></li><li><a href="#toc31" tabindex="0">6. Excelファイルの保存と出力の確認</a><ol><li><a href="#toc32" tabindex="0">💾 Excelファイルを保存する（.save()）</a></li><li><a href="#toc33" tabindex="0">✅ 保存できたかどうかを知らせるメッセージ</a></li><li><a href="#toc34" tabindex="0">🔁 全体の流れをまとめると…</a></li><li><a href="#toc35" tabindex="0">📂 実行後の確認方法</a></li></ol></li><li><a href="#toc36" tabindex="0">7. おまけ：日付や時間も一緒に書き込む（発展応用）</a><ol><li><a href="#toc37" tabindex="0">🕒 現在の日付・時刻を取得するには？</a></li><li><a href="#toc38" tabindex="0">📝 Excelの表に日付列を追加するには？</a><ol><li><a href="#toc39" tabindex="0">✅ ヘッダーを修正：</a></li><li><a href="#toc40" tabindex="0">✅ データの書き込み部分を変更：</a></li></ol></li><li><a href="#toc41" tabindex="0">📈 毎日データを記録するログとしても使える！</a></li><li><a href="#toc42" tabindex="0">✅ 補足：時間まで記録したい場合は？</a></li></ol></li><li><a href="#toc43" tabindex="0">8. まとめ</a><ol><li><a href="#toc44" tabindex="0">💡 この記事で学べたこと</a></li><li><a href="#toc45" tabindex="0">📌 自動化の一歩として最適なテーマ！</a></li></ol></li><li><a href="#toc46" tabindex="0">🔗 あわせて読みたい</a><ol><li><a href="#toc47" tabindex="0">🧮 データの扱いに強くなろう！</a></li><li><a href="#toc48" tabindex="0">🧰 API・ファイル操作の基礎固めに！</a></li><li><a href="#toc49" tabindex="0">💡 自動化スキルをレベルアップ！</a></li></ol></li><li><a href="#toc50" tabindex="0">よくある質問（Q&amp;A）</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">はじめに｜Pythonで為替レートを自動取得するってどういうこと？</span></h2>



<p>「毎日の為替レートを確認して、Excelに手入力するのが正直つらい…」<br>「できれば最新の為替レートを、自動でExcelに保存したい…」</p>



<p>そんな悩みを感じたことはありませんか？</p>



<p>実は、<strong>Pythonを使えば為替レートを自動取得し、そのままExcelファイルに保存することができます。</strong><br>一度仕組みを作ってしまえば、毎日の確認作業や転記ミスから解放され、業務効率を大きく改善できます。</p>



<p>この記事では、<strong>APIを使って最新の為替レートを取得し、PythonでExcelに自動保存する方法</strong>を、プログラミング初心者向けにやさしく解説します。<br>難しそうに聞こえる「API」も、仕組みを理解すれば意外とシンプルです。</p>



<p>経理・財務・輸入業務などで外国通貨を扱う方はもちろん、<br>「Pythonで業務を自動化してみたい」「Excel作業を効率化したい」という方にもおすすめの内容です。</p>



<p>この記事を読むことで、次のことができるようになります。</p>



<ul class="wp-block-list">
<li>Pythonで為替レートを自動取得する方法</li>



<li>為替APIの基本的な使い方</li>



<li>取得したデータをExcelファイルに書き込む手順</li>



<li>実務でも使える、シンプルで分かりやすいコード構成</li>
</ul>



<p>コードは<strong>丸写しで終わらないように、1行ずつ意味を解説</strong>していきます。<br>「なぜこの書き方なのか」が分かるので、Python初心者の方でも安心です。</p>



<p>それでは、Pythonを使った為替レートの自動取得とExcel保存を、一緒に進めていきましょう。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>


<p><script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-2494518121553371"
     crossorigin="anonymous"></script><br />
<ins class="adsbygoogle"
     style="display:block; text-align:center;"
     data-ad-layout="in-article"
     data-ad-format="fluid"
     data-ad-client="ca-pub-2494518121553371"
     data-ad-slot="2936039508"></ins><br />
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script></p>



<h2 class="wp-block-heading"><span id="toc2">1. Pythonで為替データを扱うメリット</span></h2>



<p>Pythonは、**「データを集めて、加工して、出力する」**という一連の流れを、とてもシンプルに書けるプログラミング言語です。<br>この特性が、<strong>為替レートの自動取得＆Excelへの書き出し</strong>という作業にピッタリなんです。</p>



<p>ここでは、Pythonを使うことで得られる具体的なメリットをいくつか紹介します。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc3">✅ 毎日の作業が自動化できる</span></h3>



<p>たとえば「毎朝、為替レートを調べて、Excelに入力する」…こんなルーチン作業、ありませんか？</p>



<p>Pythonを使えば、<strong>その作業をボタン1つ、あるいは時間指定で自動化</strong>できます。人の手を使わないので、入力ミスも防げて一石二鳥！</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc4">✅ 無料APIを活用して最新データを取得</span></h3>



<p>多くの為替レート提供サイトでは、<strong>「API」という仕組みでレート情報を提供</strong>しています。<br>Pythonでは <code>requests</code> というライブラリを使うことで、<strong>数行のコードでAPIからデータを取得することが可能</strong>です。</p>



<p>しかも、APIの多くは無料プランを用意しており、登録不要で使えるものもあります（例：exchangerate.host など）。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc5">✅ 取得したデータをそのままExcelに保存</span></h3>



<p>Pythonには <code>openpyxl</code> というライブラリがあり、Excelファイル（.xlsx）の作成・編集が自由自在。<br>今回のように、<strong>「為替レートを日付とともに記録する表」を自動で作る</strong>のも簡単です。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc6">✅ 業務でも通用するスキルが身につく</span></h3>



<p>APIの使い方やExcel連携の知識は、<strong>業務で使える実践的なスキル</strong>です。<br>特に、財務・経理・データ分析・エンジニア職などでは、こうしたスキルが評価される場面も多くなっています。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://python.cbagames.jp/wp-content/uploads/2025/06/9d9697ea94c9608a27d0bde31599ba86-150x150.jpg" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>「プログラミングって難しそう…」という方もご安心ください。<br>このあとの手順では、<strong>一つひとつの操作をやさしく丁寧に解説</strong>していきます。</p>



<p>次は、Python環境の準備と必要なライブラリのインストールから始めましょう！</p>
</div></div>



<hr class="wp-block-separator has-alpha-channel-opacity"/>


<p><script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-2494518121553371"
     crossorigin="anonymous"></script><br />
<ins class="adsbygoogle"
     style="display:block; text-align:center;"
     data-ad-layout="in-article"
     data-ad-format="fluid"
     data-ad-client="ca-pub-2494518121553371"
     data-ad-slot="2936039508"></ins><br />
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script></p>



<h2 class="wp-block-heading"><span id="toc7">2. 必要な環境とライブラリ</span></h2>



<p>Pythonで為替レートを取得してExcelに書き込むには、<strong>準備がとても大切</strong>です。<br>ここでは、実際にプログラムを書く前にやっておきたい2つの準備――<strong>仮想環境の作成</strong>と<strong>ライブラリのインストール</strong>について説明します。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc8">🔧 Python仮想環境の作成</span></h3>



<p>まずは、作業ごとに独立したPython環境をつくっておきましょう。これを**「仮想環境」**といいます。</p>



<h4 class="wp-block-heading"><span id="toc9">✅ なぜ仮想環境を使うの？</span></h4>



<p>Pythonにはたくさんのライブラリがありますが、全部をごちゃまぜに使っていると、<br>「どのツールがどのライブラリを使っていたっけ？」<br>「他のツールとバージョンがぶつかって動かない…」<br>なんてことが起きやすくなります。</p>



<p>仮想環境を使えば、<strong>1つのツール＝1つの専用環境</strong>として管理できるので安心です。</p>



<h4 class="wp-block-heading"><span id="toc10">✅ 仮想環境の作り方（Windows/Mac共通）</span></h4>



<p>ターミナル（またはコマンドプロンプト）で以下のコマンドを入力します：</p>



<pre class="wp-block-preformatted"><code>python -m venv venv<br></code></pre>



<p>すると、<code>venv</code> という名前の仮想環境が作成されます。</p>



<h4 class="wp-block-heading"><span id="toc11">✅ 仮想環境の起動方法</span></h4>



<ul class="wp-block-list">
<li>Windowsの場合：</li>
</ul>



<pre class="wp-block-preformatted"><code>venv\Scripts\activate<br></code></pre>



<ul class="wp-block-list">
<li>Mac/Linuxの場合：</li>
</ul>



<pre class="wp-block-preformatted"><code>source venv/bin/activate<br></code></pre>



<p>うまくいくと、ターミナルの先頭に <code>(venv)</code> と表示されます。これで仮想環境の中に入った状態です！</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc12">📦 ライブラリのインストール</span></h3>



<p>今回使うライブラリは以下の2つです：</p>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>ライブラリ名</th><th>用途</th></tr></thead><tbody><tr><td><code>requests</code></td><td>為替レートAPIからデータを取得する</td></tr><tr><td><code>openpyxl</code></td><td>Excelファイルの読み書きを行う</td></tr></tbody></table></figure>



<h4 class="wp-block-heading"><span id="toc13">✅ インストールコマンド（仮想環境の中で実行）</span></h4>



<pre class="wp-block-preformatted"><code>pip install requests openpyxl<br></code></pre>



<h4 class="wp-block-heading"><span id="toc14">✅ ライブラリのインポート方法</span></h4>



<p>Pythonコードの最初に以下を記述して、ライブラリを使えるようにします：</p>



<pre class="wp-block-preformatted"><code>import requests<br>from openpyxl import Workbook<br></code></pre>



<div class="wp-block-cocoon-blocks-tab-box-1 blank-box bb-tab bb-point block-box has-border-color has-amber-border-color">
<p><code>import openpyxl</code> とする方法もありますが、今回は <code>Workbook</code> クラスだけ使うので <code>from openpyxl import Workbook</code> の方がシンプルです。</p>
</div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://python.cbagames.jp/wp-content/uploads/2025/06/9d9697ea94c9608a27d0bde31599ba86-150x150.jpg" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>これで準備完了！<br>次はいよいよ「APIを使って為替レートを取得する」ステップに進みましょう！</p>
</div></div>



<hr class="wp-block-separator has-alpha-channel-opacity"/>


<p><script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-2494518121553371"
     crossorigin="anonymous"></script><br />
<ins class="adsbygoogle"
     style="display:block; text-align:center;"
     data-ad-layout="in-article"
     data-ad-format="fluid"
     data-ad-client="ca-pub-2494518121553371"
     data-ad-slot="2936039508"></ins><br />
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script></p>



<h2 class="wp-block-heading"><span id="toc15">3. 為替APIの仕組みとエンドポイント設定</span></h2>



<p>いよいよここから、<strong>為替レートのデータを取得するための準備</strong>に入ります。<br>そのカギを握るのが、「API」と呼ばれる仕組みです。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc16">🌐 APIってなに？</span></h3>



<p>APIとは「Application Programming Interface（アプリケーション・プログラミング・インターフェース）」の略です。</p>



<p>……ちょっと難しく聞こえますが、ざっくり言うと、</p>



<p><strong>「他のサービスから情報を自動で受け取るための窓口」</strong></p>



<p>と考えてください。</p>



<p>たとえば、天気情報・ニュース・為替レート・株価などを自分のプログラムに取り込むには、<br>その情報を提供してくれる「APIのURL」にアクセスして、<strong>機械が読み取れる形式でデータを受け取る</strong>のが一般的です。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc17">💱 為替APIとは？</span></h3>



<p>今回使う為替APIは「exchangerate.host」という、<strong>無料で使える便利なAPIサービス</strong>です。</p>



<p><strong>アクセスするURLの例：</strong></p>



<pre class="wp-block-preformatted"><code>https://api.exchangerate.host/latest<br></code></pre>



<p>このURLにアクセスすることで、**「今日の為替レート（EURを基準）」**がJSON形式で返ってきます。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc18">📌 エンドポイントって？</span></h3>



<p>APIで使われる「エンドポイント」とは、<strong>情報を取得するためのURLのこと</strong>です。<br>サービスごとに、さまざまなエンドポイントが用意されています。</p>



<p>たとえば：</p>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>エンドポイント</th><th>内容</th></tr></thead><tbody><tr><td><code>/latest</code></td><td>最新の為替レート</td></tr><tr><td><code>/timeseries</code></td><td>過去の為替レート履歴</td></tr><tr><td><code>/convert</code></td><td>通貨変換（例：USD → JPY）</td></tr></tbody></table></figure>



<p>今回はもっともシンプルな <strong>「最新のレート」を取得する <code>/latest</code></strong> を使います。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc19">✅ 通貨を指定したい場合は？</span></h3>



<p>URLの末尾にパラメータをつけて、<strong>取得したい通貨を絞り込むことも可能</strong>です。</p>



<p>たとえば、「USD（米ドル）を基準に、JPY（日本円）のレートを取得したい」なら、こんなURLになります：</p>



<pre class="wp-block-preformatted"><code>https://api.exchangerate.host/latest?base=USD&amp;symbols=JPY<br></code></pre>



<p>このように、**クエリパラメータ（?〜）**を使って情報をカスタマイズできるのがAPIの面白さです！</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<p>ここまでの内容をまとめると、次のようなコードで為替データが取得できます：</p>



<pre class="wp-block-preformatted"><code>import requests<br><br>url = "https://api.exchangerate.host/latest?base=USD"<br>response = requests.get(url)<br>data = response.json()<br>print(data)<br></code></pre>



<p>このコードを実行すると、USDを基準とした通貨レートの一覧が表示されます。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://python.cbagames.jp/wp-content/uploads/2025/06/9d9697ea94c9608a27d0bde31599ba86-150x150.jpg" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>次は、このAPIから取得したデータを**どのようにPythonで扱っていくのか？**を見ていきましょう！</p>
</div></div>



<hr class="wp-block-separator has-alpha-channel-opacity"/>


<p><script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-2494518121553371"
     crossorigin="anonymous"></script><br />
<ins class="adsbygoogle"
     style="display:block; text-align:center;"
     data-ad-layout="in-article"
     data-ad-format="fluid"
     data-ad-client="ca-pub-2494518121553371"
     data-ad-slot="2936039508"></ins><br />
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script></p>



<h2 class="wp-block-heading"><span id="toc20">4. APIから為替レートを取得するPythonコード</span></h2>



<p>ここからは、いよいよ実際に<strong>為替レートのデータをPythonで取得するコード</strong>を書いていきます！</p>



<p>今回は「USD（米ドル）」を基準に、複数の通貨レートを取得する例で進めます。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc21">🧪 まずはAPIにアクセスしてみよう！</span></h3>



<p>以下のコードをPythonファイルに書いてみてください：</p>



<pre class="wp-block-preformatted"><code>import requests<br><br># APIのURL（USDを基準）<br>url = "https://api.exchangerate.host/latest?base=USD"<br><br># データ取得<br>response = requests.get(url)<br><br># JSON形式でデータを取り出す<br>data = response.json()<br><br># 内容を確認してみよう<br>print(data)<br></code></pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc22">🔍 解説：このコードで何をしているの？</span></h3>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>行番号</th><th>処理内容</th></tr></thead><tbody><tr><td>1行目</td><td><code>requests</code> ライブラリを読み込んで、Webからデータを取得できるようにします。</td></tr><tr><td>4行目</td><td>APIのエンドポイントURLを設定します。ここでは「USDを基準にした最新の為替レート」を取得しています。</td></tr><tr><td>7行目</td><td><code>requests.get()</code> で指定したURLにアクセスし、Webからデータを取得します。</td></tr><tr><td>10行目</td><td><code>response.json()</code> で、取得したデータを<strong>Pythonの辞書（dict）型</strong>に変換します。</td></tr><tr><td>13行目</td><td><code>print()</code>で、実際に取得できたデータを確認しています。</td></tr></tbody></table></figure>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc23">💡 JSON形式のデータとは？</span></h3>



<p>APIから取得できるデータは、基本的に**「JSON形式」**です。<br>これは「キー（名前）と値（データ）」がセットになった、<strong>人間にも読めるシンプルな形式</strong>です。</p>



<p>例として、こんな形で表示されるはずです：</p>



<pre class="wp-block-preformatted"><code>{<br>  "base": "USD",<br>  "date": "2025-06-18",<br>  "rates": {<br>    "JPY": 157.35,<br>    "EUR": 0.91,<br>    "GBP": 0.78,<br>    ...<br>  }<br>}<br></code></pre>



<p>この中の <code>"rates"</code> の部分が重要で、ここに各通貨のレートが格納されています。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc24">✅ 必要な情報だけ取り出すには？</span></h3>



<p>JSONデータは辞書型なので、<strong>Pythonの辞書のようにキー指定で中身を取り出せます</strong>。</p>



<p>たとえば、すべての通貨レートを取得したい場合は次のように書きます：</p>



<pre class="wp-block-preformatted"><code>for currency, rate in data["rates"].items():<br>    print(f"{currency}: {rate}")<br></code></pre>



<p>このコードを実行すると、次のような出力になります：</p>



<pre class="wp-block-preformatted"><code>JPY: 157.35<br>EUR: 0.91<br>GBP: 0.78<br>...<br></code></pre>



<p>これで、<strong>APIから取得した為替データをPythonで自由に扱える</strong>ようになりました！</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://python.cbagames.jp/wp-content/uploads/2025/06/9d9697ea94c9608a27d0bde31599ba86-150x150.jpg" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>次はいよいよ、取得した為替レートを<strong>Excelファイルに書き込む</strong>手順を解説していきます！</p>
</div></div>



<hr class="wp-block-separator has-alpha-channel-opacity"/>


<p><script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-2494518121553371"
     crossorigin="anonymous"></script><br />
<ins class="adsbygoogle"
     style="display:block; text-align:center;"
     data-ad-layout="in-article"
     data-ad-format="fluid"
     data-ad-client="ca-pub-2494518121553371"
     data-ad-slot="2936039508"></ins><br />
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script></p>



<h2 class="wp-block-heading"><span id="toc25">5. 取得したデータをExcelに書き込む</span></h2>



<p>APIから取得した為替レートのデータを、次は<strong>Excelファイルに書き込んで保存</strong>してみましょう。</p>



<p>ここでは <code>openpyxl</code> ライブラリを使って、以下のような作業を行います：</p>



<ul class="wp-block-list">
<li>新しいExcelファイルを作成</li>



<li>ワークシートを準備</li>



<li>為替レートのデータを1行ずつ書き込む</li>



<li>ファイルとして保存</li>
</ul>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc26">📘 Excelファイルを作るには？（Workbook）</span></h3>



<p>まずはExcelファイルの「本体」となる**ワークブック（Workbook）**を作ります。以下のコードを追記してみましょう：</p>



<pre class="wp-block-preformatted"><code>from openpyxl import Workbook<br><br># 新しいExcelファイルを作成<br>wb = Workbook()<br><br># アクティブなシートを取得<br>ws = wb.active<br><br># シートの名前を変更（任意）<br>ws.title = "Exchange Rates"<br></code></pre>



<p>ここまでで、空っぽのExcelファイルとシートが1枚できた状態です。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc27">🏷️ ヘッダーを追加する（append）</span></h3>



<p>次に、**列のタイトル（ヘッダー）**を書き込みます。</p>



<pre class="wp-block-preformatted"><code># ヘッダーを追加<br>ws.append(["通貨コード", "為替レート"])<br></code></pre>



<p>これで、1行目に「通貨コード」「為替レート」という見出しが入りました。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc28">🔄 通貨とレートを1行ずつ追加（forループ＋append）</span></h3>



<p>ここからは、前のステップで取得した <code>data["rates"]</code> を<strong>for文でループ</strong>して、1行ずつExcelに追加していきます：</p>



<pre class="wp-block-preformatted"><code># 取得したレート情報を書き込む<br>for currency, rate in data["rates"].items():<br>    ws.append([currency, rate])<br></code></pre>



<p>これで、各通貨コード（例: USD, JPY, EUR）と、その為替レートが<strong>行ごとにExcelファイルに追加</strong>されていきます。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc29">✅ append()とは？</span></h3>



<p><code>append()</code> は、Excelファイルに<strong>行単位でデータを追加する</strong>ためのメソッドです。</p>



<pre class="wp-block-preformatted"><code>ws.append(["USD", 1.00])  # 「USD | 1.00」という行が追加される<br></code></pre>



<p>リストの形で渡すと、そのまま左から右に順番に書き込まれます。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc30">💡 補足：複数回appendすれば、表形式になる</span></h3>



<pre class="wp-block-preformatted"><code>ws.append(["通貨", "レート"])<br>ws.append(["USD", 1.00])<br>ws.append(["JPY", 157.35])<br>ws.append(["EUR", 0.91])<br></code></pre>



<p>こんな感じで書き込むと、Excelでは以下のように見えます：</p>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>通貨</th><th>レート</th></tr></thead><tbody><tr><td>USD</td><td>1.00</td></tr><tr><td>JPY</td><td>157.35</td></tr><tr><td>EUR</td><td>0.91</td></tr></tbody></table></figure>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://python.cbagames.jp/wp-content/uploads/2025/06/9d9697ea94c9608a27d0bde31599ba86-150x150.jpg" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>これで、<strong>為替レートデータをExcelに整然と出力する準備</strong>が整いました！</p>
</div></div>



<hr class="wp-block-separator has-alpha-channel-opacity"/>


<p><script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-2494518121553371"
     crossorigin="anonymous"></script><br />
<ins class="adsbygoogle"
     style="display:block; text-align:center;"
     data-ad-layout="in-article"
     data-ad-format="fluid"
     data-ad-client="ca-pub-2494518121553371"
     data-ad-slot="2936039508"></ins><br />
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script></p>



<h2 class="wp-block-heading"><span id="toc31">6. Excelファイルの保存と出力の確認</span></h2>



<p>ここまでで、為替レートのデータを<strong>Excelのワークブック（Workbook）に書き込む処理</strong>が完成しました。<br>最後の仕上げは、作成したExcelファイルを<strong>保存して、ユーザーに完了を伝える出力メッセージ</strong>を表示することです。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc32">💾 Excelファイルを保存する（.save()）</span></h3>



<p>Excelファイルを保存するには、以下のように <code>.save()</code> メソッドを使います。</p>



<pre class="wp-block-preformatted"><code># ファイル名を指定して保存<br>wb.save("exchange_rates.xlsx")<br></code></pre>



<p>このコードを実行すると、<strong>スクリプトを実行したフォルダに「exchange_rates.xlsx」ファイルが生成</strong>されます。</p>



<p>✅ ファイル名は自由に変えてOKですが、拡張子 <code>.xlsx</code> を忘れずにつけましょう！</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc33">✅ 保存できたかどうかを知らせるメッセージ</span></h3>



<p>プログラムの最後に、<strong>処理が正常に終わったことをユーザーに知らせる</strong>出力メッセージを加えておくと、親切で実務的です。</p>



<pre class="wp-block-preformatted"><code>print("為替レートのExcelファイルが保存されました！")<br></code></pre>



<p>さらに、ファイル名や日付を表示しておくと、ログとしても便利です。</p>



<pre class="wp-block-preformatted"><code>from datetime import datetime<br><br>today = datetime.now().strftime("%Y-%m-%d")<br>print(f"[{today}] exchange_rates.xlsx に書き出しが完了しました。")<br></code></pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc34">🔁 全体の流れをまとめると…</span></h3>



<p>これで、次のような流れが完成しました：</p>



<ol class="wp-block-list">
<li>APIで為替レートを取得</li>



<li>データをExcelに書き込み</li>



<li><code>.xlsx</code>ファイルとして保存</li>



<li>ユーザーにメッセージで通知</li>
</ol>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc35">📂 実行後の確認方法</span></h3>



<p>スクリプトを実行した後は、次の点を確認してみてください：</p>



<ul class="wp-block-list">
<li>フォルダ内に <code>exchange_rates.xlsx</code> ファイルがあるか？</li>



<li>開いてみると、通貨コードとレートの一覧が正しく書かれているか？</li>



<li>保存メッセージがターミナルに表示されたか？</li>
</ul>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://python.cbagames.jp/wp-content/uploads/2025/06/9d9697ea94c9608a27d0bde31599ba86-150x150.jpg" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>問題がなければ、<strong>Pythonでの為替レート取得＆Excel出力スクリプトが無事完成</strong>です！</p>
</div></div>



<hr class="wp-block-separator has-alpha-channel-opacity"/>


<p><script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-2494518121553371"
     crossorigin="anonymous"></script><br />
<ins class="adsbygoogle"
     style="display:block; text-align:center;"
     data-ad-layout="in-article"
     data-ad-format="fluid"
     data-ad-client="ca-pub-2494518121553371"
     data-ad-slot="2936039508"></ins><br />
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script></p>



<h2 class="wp-block-heading"><span id="toc36">7. おまけ：日付や時間も一緒に書き込む（発展応用）</span></h2>



<p>ここまでで、為替レートの一覧をExcelに書き込む基本的なスクリプトは完成しました。<br>でも、**「このレート、いつ取得したデータだろう？」**と後から見返すこともありますよね。</p>



<p>そこでおすすめなのが、<strong>日付や時刻も一緒にExcelに記録しておく方法</strong>です。<br>Pythonの <code>datetime</code> モジュールを使えば、とても簡単に追加できます。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc37">🕒 現在の日付・時刻を取得するには？</span></h3>



<p>以下のように、<code>datetime.now()</code> を使って、今の日時を取得できます。</p>



<pre class="wp-block-preformatted"><code>from datetime import datetime<br><br># 現在日時を取得（例：2025-06-18 15:42:00）<br>now = datetime.now()<br><br># 日付のみ取り出す（例：2025-06-18）<br>date_str = now.strftime("%Y-%m-%d")<br><br># 日時付き（例：2025-06-18 15:42:00）<br>datetime_str = now.strftime("%Y-%m-%d %H:%M:%S")<br></code></pre>



<p><code>strftime()</code> を使うことで、<strong>表示フォーマットを好きな形に変換</strong>できます。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc38">📝 Excelの表に日付列を追加するには？</span></h3>



<p>「通貨コード」「レート」だけでなく、「取得日付」も一緒に書き込めるようにしてみましょう。</p>



<h4 class="wp-block-heading"><span id="toc39">✅ ヘッダーを修正：</span></h4>



<pre class="wp-block-preformatted"><code>ws.append(["通貨コード", "為替レート", "取得日"])<br></code></pre>



<h4 class="wp-block-heading"><span id="toc40">✅ データの書き込み部分を変更：</span></h4>



<pre class="wp-block-preformatted"><code>for currency, rate in data["rates"].items():<br>    ws.append([currency, rate, date_str])<br></code></pre>



<p>これで、次のような表がExcelに記録されます：</p>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>通貨コード</th><th>為替レート</th><th>取得日</th></tr></thead><tbody><tr><td>USD</td><td>1.00</td><td>2025-06-18</td></tr><tr><td>JPY</td><td>157.35</td><td>2025-06-18</td></tr><tr><td>EUR</td><td>0.91</td><td>2025-06-18</td></tr></tbody></table></figure>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc41">📈 毎日データを記録するログとしても使える！</span></h3>



<p>この書き方は、<strong>毎日為替レートを記録するような自動スクリプト</strong>にも応用できます。<br>日付を残しておけば、あとで時系列でグラフを作ることもできますし、データの変化を追うのにも便利です！</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc42">✅ 補足：時間まで記録したい場合は？</span></h3>



<p>日付だけでなく、時間も記録したいなら <code>datetime_str</code> を使えばOKです：</p>



<pre class="wp-block-preformatted"><code>ws.append(["通貨コード", "為替レート", "取得日時"])<br><br>for currency, rate in data["rates"].items():<br>    ws.append([currency, rate, datetime_str])<br></code></pre>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://python.cbagames.jp/wp-content/uploads/2025/06/9d9697ea94c9608a27d0bde31599ba86-150x150.jpg" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>これで、「いつのデータか」をしっかり管理できる、<strong>実用的な為替レート記録ツール</strong>が完成しました！</p>
</div></div>



<hr class="wp-block-separator has-alpha-channel-opacity"/>


<p><script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-2494518121553371"
     crossorigin="anonymous"></script><br />
<ins class="adsbygoogle"
     style="display:block; text-align:center;"
     data-ad-layout="in-article"
     data-ad-format="fluid"
     data-ad-client="ca-pub-2494518121553371"
     data-ad-slot="2936039508"></ins><br />
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script></p>



<h2 class="wp-block-heading"><span id="toc43">8. まとめ</span></h2>



<p>今回は、<strong>Pythonを使ってWebから為替レートを自動取得し、Excelに書き込む方法</strong>を解説してきました。</p>



<p>実際にやってみると、たった数十行のコードで、</p>



<ul class="wp-block-list">
<li>最新の為替レートを無料APIから取得</li>



<li>Excelファイルに整形して出力</li>



<li>日付付きの記録も可能</li>
</ul>



<p>といった、<strong>実務でも使える便利なツール</strong>が作れてしまいます。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc44">💡 この記事で学べたこと</span></h3>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>ステップ</th><th>内容</th></tr></thead><tbody><tr><td>環境構築</td><td>仮想環境の作成とライブラリのインストール（requests / openpyxl）</td></tr><tr><td>API活用</td><td>為替API（exchangerate.host）からのデータ取得方法</td></tr><tr><td>Excel操作</td><td>openpyxlによるワークブック生成・データ書き込み</td></tr><tr><td>応用</td><td>日付や時間の記録でログ管理にも対応可能</td></tr></tbody></table></figure>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc45">📌 自動化の一歩として最適なテーマ！</span></h3>



<p>「手作業でやっていた作業をPythonで効率化したい」<br>「APIの扱い方を基礎から学びたい」<br>「Excelとの連携方法を実践したい」</p>



<p>そんな方にとって、今回の内容はまさに<strong>初めの一歩</strong>にピッタリのテーマだったのではないでしょうか？</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://python.cbagames.jp/wp-content/uploads/2025/06/9d9697ea94c9608a27d0bde31599ba86-150x150.jpg" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>Pythonはデータの取得や加工、出力に強く、業務の自動化にも非常に向いています。<br>ぜひこの記事を参考に、あなた自身のアイデアでいろいろな自動ツールを作ってみてくださいね！</p>
</div></div>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading"><span id="toc46">🔗 あわせて読みたい</span></h2>



<h3 class="wp-block-heading"><span id="toc47">🧮 データの扱いに強くなろう！</span></h3>



<ul class="wp-block-list">
<li><a target="_blank" href="https://python.cbagames.jp/2025/06/16/python-yaml-file-basic/">【Python入門】YAMLファイルの書き方と使い方｜設定ファイルの操作をわかりやすく解説！</a><br>API連携やツール構築でよく使われるYAML形式について、基本から応用までを解説しています。</li>



<li><a target="_blank" href="https://python.cbagames.jp/2025/06/15/python-matplotlib-graph-beginner/">Pythonでグラフを描く！Matplotlibの使い方を初心者向けにやさしく解説</a><br>取得した為替データをグラフで可視化したい人におすすめです。</li>
</ul>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc48">🧰 API・ファイル操作の基礎固めに！</span></h3>



<ul class="wp-block-list">
<li><a target="_blank" href="https://python.cbagames.jp/2025/06/16/python-gmail-api-send-receive/">【Python入門】Gmail APIでメール送受信＆添付ファイルを操作する方法をやさしく解説！</a><br>APIの扱いをもっと深く理解したい人向けに、Gmail APIの使い方も学べます。</li>



<li><a target="_blank" href="https://python.cbagames.jp/2025/06/16/python-pyinstaller-exe-guide/">【Win/Mac対応】Pythonスクリプトをexe化！PyInstallerで実行ファイルを作る方法をやさしく解説</a><br>今回の為替ツールを配布用のアプリにしたい場合に便利です。</li>
</ul>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc49">💡 自動化スキルをレベルアップ！</span></h3>



<p><a target="_blank" href="https://python.cbagames.jp/2025/06/16/python-requirements-txt-install/">Pythonでライブラリを一括インストールする方法｜requirements.txtの使い方をやさしく解説！</a><br>仮想環境の再現や配布時に欠かせない設定ファイルの使い方をマスターできます。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading"><span id="toc50">よくある質問（Q&amp;A）</span></h2>



<div class="wp-block-cocoon-blocks-faq faq-wrap blank-box block-box not-nested-style cocoon-block-faq"><dl class="faq"><dt class="faq-question faq-item"><div class="faq-question-label faq-item-label">Q</div><div class="faq-question-content faq-item-content">為替レートのAPIは無料で使えるの？</div></dt><dd class="faq-answer faq-item"><div class="faq-answer-label faq-item-label">A</div><div class="faq-answer-content faq-item-content">
<p>はい、無料で使えるAPIもあります。たとえば <a rel="noopener" target="_blank" class="" href="https://exchangerate.host/">exchangerate.host</a> はAPIキー不要で利用可能です。商用利用や高頻度アクセスには有料プランが必要な場合もあります。</p>
</div></dd></dl></div>



<div class="wp-block-cocoon-blocks-faq faq-wrap blank-box block-box not-nested-style cocoon-block-faq"><dl class="faq"><dt class="faq-question faq-item"><div class="faq-question-label faq-item-label">Q</div><div class="faq-question-content faq-item-content">どの通貨の為替レートが取得できますか？</div></dt><dd class="faq-answer faq-item"><div class="faq-answer-label faq-item-label">A</div><div class="faq-answer-content faq-item-content">
<p>APIによりますが、主要な通貨（USD、EUR、JPY、GBPなど）に加えて、100種類以上の通貨をサポートしていることが多いです。<code>symbols</code>パラメータで指定することで特定の通貨だけを取得することもできます。</p>
</div></dd></dl></div>



<div class="wp-block-cocoon-blocks-faq faq-wrap blank-box block-box not-nested-style cocoon-block-faq"><dl class="faq"><dt class="faq-question faq-item"><div class="faq-question-label faq-item-label">Q</div><div class="faq-question-content faq-item-content">データ取得のタイミングを自動化できますか？</div></dt><dd class="faq-answer faq-item"><div class="faq-answer-label faq-item-label">A</div><div class="faq-answer-content faq-item-content">
<p>可能です。Windowsの「タスクスケジューラ」や、Mac/Linuxの「cron」を使えば、毎日決まった時間にスクリプトを実行して最新の為替レートを取得できます。</p>
</div></dd></dl></div>
]]></content:encoded>
					
					<wfw:commentRss>https://python.cbagames.jp/2025/06/18/python-exchange-rate-to-excel/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>【業務効率化】Pythonで自動レポートを作る方法｜Excel・PDF・メール送信まで一括自動化！</title>
		<link>https://python.cbagames.jp/2025/06/04/python-report-automation/</link>
					<comments>https://python.cbagames.jp/2025/06/04/python-report-automation/#respond</comments>
		
		<dc:creator><![CDATA[asukapy]]></dc:creator>
		<pubDate>Wed, 04 Jun 2025 04:31:15 +0000</pubDate>
				<category><![CDATA[自動化スクリプト]]></category>
		<category><![CDATA[Excel操作]]></category>
		<category><![CDATA[PDF出力]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[メール送信]]></category>
		<category><![CDATA[レポート作成]]></category>
		<category><![CDATA[業務効率化]]></category>
		<category><![CDATA[自動化]]></category>
		<guid isPermaLink="false">https://python.cbagames.jp/?p=91</guid>

					<description><![CDATA[目次 はじめに｜レポート作成の手間をPythonで解消しよう2. 事前準備｜必要なライブラリと環境設定✅ Pythonがまだインストールされていない方へ▼ Pythonの公式サイト（Windows / Mac 対応）✅  [&#8230;]]]></description>
										<content:encoded><![CDATA[

  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-4"><label class="toc-title" for="toc-checkbox-4">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">はじめに｜レポート作成の手間をPythonで解消しよう</a></li><li><a href="#toc2" tabindex="0">2. 事前準備｜必要なライブラリと環境設定</a><ol><li><a href="#toc3" tabindex="0">✅ Pythonがまだインストールされていない方へ</a><ol><li><a href="#toc4" tabindex="0">▼ Pythonの公式サイト（Windows / Mac 対応）</a></li></ol></li><li><a href="#toc5" tabindex="0">✅ 必要なライブラリ一覧</a></li><li><a href="#toc6" tabindex="0">✅ 仮想環境の作成（おすすめ）</a></li><li><a href="#toc7" tabindex="0">✅ ライブラリのインストール</a></li><li><a href="#toc8" tabindex="0">✅ Gmailでメール送信を使う予定の方へ</a></li></ol></li><li><a href="#toc9" tabindex="0">3. ステップ1｜Excelレポートを自動生成する</a><ol><li><a href="#toc10" tabindex="0">📊 サンプルで作るレポート内容</a></li><li><a href="#toc11" tabindex="0">🧰 使用ライブラリの確認</a></li><li><a href="#toc12" tabindex="0">🧪 ステップ1：データの準備</a></li><li><a href="#toc13" tabindex="0">💾 ステップ2：Excelファイルに保存</a></li><li><a href="#toc14" tabindex="0">📈 ステップ3：商品別の売上グラフを追加</a></li><li><a href="#toc15" tabindex="0">🧩 ステップ4：グラフ画像をExcelに貼り付け（おまけ）</a></li><li><a href="#toc16" tabindex="0">✅ ここまでのまとめ</a></li></ol></li><li><a href="#toc17" tabindex="0">4. ステップ2｜レポートをPDFで出力する</a><ol><li><a href="#toc18" tabindex="0">🔧 今回使うライブラリ</a></li><li><a href="#toc19" tabindex="0">📦 まずはライブラリをインストール</a></li><li><a href="#toc20" tabindex="0">📝 PDF出力のコード例</a></li><li><a href="#toc21" tabindex="0">✅ 実行するとこうなる！</a></li><li><a href="#toc22" tabindex="0">📌 PDF出力のポイント</a></li><li><a href="#toc23" tabindex="0">💡 おまけ：HTMLテンプレートでPDF出力したい人は？</a></li></ol></li><li><a href="#toc24" tabindex="0">5. ステップ3｜レポートをメールで自動送信する</a><ol><li><a href="#toc25" tabindex="0">📦 必要なライブラリ</a></li><li><a href="#toc26" tabindex="0">🔐 Gmailの設定（事前に必要）</a><ol><li><a href="#toc27" tabindex="0">▼ アプリパスワードの手順：</a></li></ol></li><li><a href="#toc28" tabindex="0">📤 メール送信コード例（PDF添付つき）</a></li><li><a href="#toc29" tabindex="0">✅ 補足：エラーが出たときの対処法</a></li><li><a href="#toc30" tabindex="0">📌 メール送信の自動化でできること</a></li></ol></li><li><a href="#toc31" tabindex="0">6. 応用例｜スケジューラーと組み合わせて毎朝9時に送る</a><ol><li><a href="#toc32" tabindex="0">🔁 方法は2パターン</a></li><li><a href="#toc33" tabindex="0">✅ 方法1：scheduleライブラリで毎日9時に実行</a><ol><li><a href="#toc34" tabindex="0">▼ ライブラリのインストール</a></li><li><a href="#toc35" tabindex="0">▼ サンプルコード（関数を毎朝9時に実行）</a></li></ol></li><li><a href="#toc36" tabindex="0">✅ 方法2：Windowsタスクスケジューラで自動実行</a><ol><li><a href="#toc37" tabindex="0">▼ 設定手順（カンタンです！）</a></li></ol></li><li><a href="#toc38" tabindex="0">⏰ その他Tips</a></li></ol></li><li><a href="#toc39" tabindex="0">7. まとめ｜手動作業からの卒業で毎日をもっと効率的に</a><ol><li><a href="#toc40" tabindex="0">✅ 自動レポート作成の流れ</a></li><li><a href="#toc41" tabindex="0">💡 最後にアドバイス</a></li></ol></li><li><a href="#toc42" tabindex="0">よくある質問（Q&amp;A）</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">はじめに｜レポート作成の手間をPythonで解消しよう</span></h2>



<p>毎日の業務で、こんな作業に時間を取られていませんか？</p>



<ul class="wp-block-list">
<li>毎回同じ形式の <strong>Excelレポートを手作業で作成している</strong></li>



<li>作成した資料を <strong>PDFに変換してメール送信</strong> するのが面倒</li>



<li>ミスなく、できるだけ <strong>短時間でレポート作業を終わらせたい</strong></li>
</ul>



<p>こうした定型作業をまとめて自動化できるのが、<br><strong>Python（パイソン）による業務効率化</strong> です。</p>



<p>Pythonは、Excel操作・PDF生成・メール送信といった<br><strong>事務作業を一括で自動処理できるプログラミング言語</strong>として、多くの現場で活用されています。<br>一度スクリプトを作ってしまえば、<br>「データを用意して実行するだけ」でレポート作成が完了する仕組みも難しくありません。</p>



<p>たとえば、Pythonを使うと次のようなことが可能です。</p>



<ul class="wp-block-list">
<li>決まったデータをもとに <strong>Excelレポートを自動生成</strong></li>



<li>作成したExcelを <strong>PDF形式に自動変換</strong></li>



<li>完成したレポートを <strong>メールで自動送信</strong></li>
</ul>



<p>これらをすべて <strong>1つのPythonスクリプト</strong> にまとめることで、<br>毎日・毎週のレポート作業が <strong>数分から数秒レベル</strong> に短縮できます。</p>



<p>この記事では、<br><strong>Pythonで自動レポートを作成する流れ</strong> を以下の3ステップで解説します。</p>



<ol class="wp-block-list">
<li>Excelファイルを自動で作成する方法</li>



<li>レポートをPDFに変換する方法</li>



<li>メールで自動送信する方法</li>
</ol>



<p>「Pythonは初めてで不安…」という方でも大丈夫です。<br><strong>初心者でも理解できる前提</strong>で、実務で使える考え方とコード例を交えながら説明していきます。</p>



<p>毎日の単純作業を減らし、本来やるべき仕事に集中するために、<br>Pythonによる業務自動化を一緒に始めてみましょう。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>


<p><script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-2494518121553371"
     crossorigin="anonymous"></script><br />
<ins class="adsbygoogle"
     style="display:block; text-align:center;"
     data-ad-layout="in-article"
     data-ad-format="fluid"
     data-ad-client="ca-pub-2494518121553371"
     data-ad-slot="2936039508"></ins><br />
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script></p>



<h2 class="wp-block-heading"><span id="toc2">2. 事前準備｜必要なライブラリと環境設定</span></h2>



<p>Pythonでレポートを自動化するには、あらかじめいくつかの準備が必要です。<br>この章では、Pythonのインストールから必要なライブラリの導入方法まで、ていねいに解説していきます。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc3">✅ Pythonがまだインストールされていない方へ</span></h3>



<p>まずはPythonをインストールしましょう。</p>



<h4 class="wp-block-heading"><span id="toc4">▼ Pythonの公式サイト（Windows / Mac 対応）</span></h4>




<a rel="noopener" target="_blank" href="https://www.python.org/downloads" title="Download Python" class="blogcard-wrap external-blogcard-wrap a-wrap cf"><div class="blogcard external-blogcard eb-left cf"><div class="blogcard-label external-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail external-blogcard-thumbnail"><img decoding="async" src="https://www.python.org/static/opengraph-icon-200x200.png" alt="" class="blogcard-thumb-image external-blogcard-thumb-image" width="160" height="90" /></figure><div class="blogcard-content external-blogcard-content"><div class="blogcard-title external-blogcard-title">Download Python</div><div class="blogcard-snippet external-blogcard-snippet">The official home of the Python Programming Language</div></div><div class="blogcard-footer external-blogcard-footer cf"><div class="blogcard-site external-blogcard-site"><div class="blogcard-favicon external-blogcard-favicon"><img decoding="async" src="https://www.google.com/s2/favicons?domain=https://www.python.org/downloads/" alt="" class="blogcard-favicon-image external-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain external-blogcard-domain">www.python.org</div></div></div></div></a>



<p>上記ページから最新版をダウンロードして、画面の案内にそってインストールします。<br>Windowsの方は、「Add Python to PATH」にチェックを入れるのを忘れずに！</p>



<p>もしインストール方法が不安な方は、こちらの記事も参考になります：<br>👉 <a target="_blank" href="https://python.cbagames.jp/2025/06/01/start-idle-windows1/">【Python入門1】WindowsでPythonを始めよう！IDLEのインストールと基本の使い方ガイド</a></p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc5">✅ 必要なライブラリ一覧</span></h3>



<p>Pythonで自動レポートを作るには、次のような便利なライブラリを使います。</p>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>ライブラリ名</th><th>役割</th></tr></thead><tbody><tr><td><code>pandas</code></td><td>表形式のデータ処理（Excel操作に便利）</td></tr><tr><td><code>openpyxl</code></td><td>Excelファイルの読み書き</td></tr><tr><td><code>matplotlib</code></td><td>グラフの作成</td></tr><tr><td><code>reportlab</code></td><td>PDFファイルの生成</td></tr><tr><td><code>smtplib</code> / <code>email</code></td><td>メールの送信</td></tr></tbody></table></figure>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc6">✅ 仮想環境の作成（おすすめ）</span></h3>



<p>プロジェクトごとに環境を分けると、他の開発に影響が出にくくなります。</p>



<pre class="wp-block-preformatted"><code>python -m venv report-env<br>source report-env/bin/activate  # Mac/Linux の場合<br>report-env\Scripts\activate     # Windows の場合<br></code></pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc7">✅ ライブラリのインストール</span></h3>



<p>次のコマンドを順番に実行しましょう（仮想環境を有効にしたあとでOKです）：</p>



<pre class="wp-block-preformatted"><code>pip install pandas openpyxl matplotlib reportlab<br></code></pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc8">✅ Gmailでメール送信を使う予定の方へ</span></h3>



<p>Gmailアカウントでメールを自動送信する場合は、以下を設定しておくと安心です。</p>



<ul class="wp-block-list">
<li>2段階認証をONにする</li>



<li>アプリパスワードを発行する（通常のパスワードでは送信できません）</li>
</ul>



<p>設定方法は後ほど「メール自動送信」の章でくわしく解説します！</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://python.cbagames.jp/wp-content/uploads/2025/06/9d9697ea94c9608a27d0bde31599ba86-150x150.jpg" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>これで準備は完了です！</p>



<p>次はいよいよ、「Excelレポートの自動生成」に進みます。<br>日報や営業資料など、よく使うレポートをPythonで一気に作ってみましょう！</p>
</div></div>



<hr class="wp-block-separator has-alpha-channel-opacity"/>


<p><script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-2494518121553371"
     crossorigin="anonymous"></script><br />
<ins class="adsbygoogle"
     style="display:block; text-align:center;"
     data-ad-layout="in-article"
     data-ad-format="fluid"
     data-ad-client="ca-pub-2494518121553371"
     data-ad-slot="2936039508"></ins><br />
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script></p>



<h2 class="wp-block-heading"><span id="toc9">3. ステップ1｜Excelレポートを自動生成する</span></h2>



<p>それではいよいよ、Pythonで「Excelレポートを自動生成」してみましょう！</p>



<p>今回は「売上レポート」を例にして、表の作成 → グラフ作成 → Excel保存までの流れをステップごとに解説していきます。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc10">📊 サンプルで作るレポート内容</span></h3>



<p>たとえば、こんな売上データを使ってレポートを作るとします：</p>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>日付</th><th>商品名</th><th>売上数</th><th>単価</th></tr></thead><tbody><tr><td>2025-06-01</td><td>ノート</td><td>5</td><td>300</td></tr><tr><td>2025-06-01</td><td>ペン</td><td>10</td><td>100</td></tr><tr><td>2025-06-02</td><td>ノート</td><td>3</td><td>300</td></tr><tr><td>2025-06-02</td><td>ペン</td><td>7</td><td>100</td></tr></tbody></table></figure>



<p>このデータをもとに、「合計売上」「商品ごとの集計グラフ」付きのExcelファイルを自動で作ってみます！</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc11">🧰 使用ライブラリの確認</span></h3>



<p>まずは次のライブラリを使います：</p>



<pre class="wp-block-preformatted"><code>import pandas as pd<br>import matplotlib.pyplot as plt<br>from openpyxl import load_workbook<br></code></pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc12">🧪 ステップ1：データの準備</span></h3>



<pre class="wp-block-preformatted"><code>data = {<br>    '日付': ['2025-06-01', '2025-06-01', '2025-06-02', '2025-06-02'],<br>    '商品名': ['ノート', 'ペン', 'ノート', 'ペン'],<br>    '売上数': [5, 10, 3, 7],<br>    '単価': [300, 100, 300, 100]<br>}<br><br>df = pd.DataFrame(data)<br>df['売上合計'] = df['売上数'] * df['単価']<br></code></pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc13">💾 ステップ2：Excelファイルに保存</span></h3>



<pre class="wp-block-preformatted"><code>file_name = '売上レポート.xlsx'<br>df.to_excel(file_name, index=False)<br></code></pre>



<p>これで、<strong>売上合計列つきのExcelファイル</strong>が作成されました！</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc14">📈 ステップ3：商品別の売上グラフを追加</span></h3>



<pre class="wp-block-preformatted"><code># 商品ごとの売上合計を集計<br>grouped = df.groupby('商品名')['売上合計'].sum()<br><br># グラフ作成<br>plt.figure(figsize=(6, 4))<br>grouped.plot(kind='bar')<br>plt.title('商品別売上合計')<br>plt.ylabel('金額（円）')<br>plt.tight_layout()<br>plt.savefig('sales_chart.png')<br>plt.close()<br></code></pre>



<p>これで「商品ごとの売上グラフ」が<strong>画像ファイルとして保存</strong>されます。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc15">🧩 ステップ4：グラフ画像をExcelに貼り付け（おまけ）</span></h3>



<pre class="wp-block-preformatted"><code>from openpyxl.drawing.image import Image as ExcelImage<br><br>book = load_workbook(file_name)<br>sheet = book.active<br><br>img = ExcelImage('sales_chart.png')<br>sheet.add_image(img, 'F2')  # F2セルに画像を貼る<br><br>book.save(file_name)<br></code></pre>



<p>これで完成！<br>Excelファイルにはデータとグラフの両方が入っていて、<strong>提出用レポートとしてそのまま使えます！</strong></p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc16">✅ ここまでのまとめ</span></h3>



<ul class="wp-block-list">
<li><code>pandas</code>でデータフレームを作って、</li>



<li><code>openpyxl</code>でExcelに保存し、</li>



<li><code>matplotlib</code>でグラフを作成し、</li>



<li>グラフ画像をExcelに貼り付ける！</li>
</ul>



<p>という流れでした。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>


<p><script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-2494518121553371"
     crossorigin="anonymous"></script><br />
<ins class="adsbygoogle"
     style="display:block; text-align:center;"
     data-ad-layout="in-article"
     data-ad-format="fluid"
     data-ad-client="ca-pub-2494518121553371"
     data-ad-slot="2936039508"></ins><br />
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script></p>



<h2 class="wp-block-heading"><span id="toc17">4. ステップ2｜レポートをPDFで出力する</span></h2>



<p>Excelレポートが完成したら、次は「PDFファイル」として出力してみましょう！</p>



<p>PDFは、<strong>レイアウトが崩れにくく、印刷やメール送信にも便利</strong>ですよね。<br>Pythonなら、これも自動でできちゃいます！</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc18">🔧 今回使うライブラリ</span></h3>



<p>PDF出力には、以下のどちらかの方法が使えます：</p>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>方法</th><th>内容</th></tr></thead><tbody><tr><td><code>reportlab</code></td><td>PDFを1から作成。完全カスタマイズ可能。</td></tr><tr><td><code>pdfkit</code> + <code>wkhtmltopdf</code></td><td>HTMLレイアウトをPDF化（見た目がきれい）。</td></tr></tbody></table></figure>



<p>今回は、<strong>初心者にも扱いやすい <code>reportlab</code></strong> を使って、「PDFでレポートを出力する」方法を解説します。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc19">📦 まずはライブラリをインストール</span></h3>



<p>まだインストールしていない方は、以下を実行してください：</p>



<pre class="wp-block-preformatted"><code>pip install reportlab<br></code></pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc20">📝 PDF出力のコード例</span></h3>



<pre class="wp-block-preformatted"><code>from reportlab.lib.pagesizes import A4<br>from reportlab.pdfgen import canvas<br><br># PDFファイル名<br>file_name = "売上レポート.pdf"<br><br># PDFキャンバス作成（A4サイズ）<br>c = canvas.Canvas(file_name, pagesize=A4)<br>width, height = A4<br><br># タイトル<br>c.setFont("Helvetica-Bold", 16)<br>c.drawString(100, height - 50, "売上レポート（2025年6月）")<br><br># 見出し<br>c.setFont("Helvetica", 12)<br>c.drawString(50, height - 100, "日付        商品名        売上数        単価        売上合計")<br><br># サンプルデータ（実際はDataFrameからループしてもOK）<br>data = [<br>    ['2025-06-01', 'ノート', 5, 300, 1500],<br>    ['2025-06-01', 'ペン', 10, 100, 1000],<br>    ['2025-06-02', 'ノート', 3, 300, 900],<br>    ['2025-06-02', 'ペン', 7, 100, 700]<br>]<br><br># 表の出力<br>y = height - 130<br>for row in data:<br>    row_str = '        '.join(map(str, row))<br>    c.drawString(50, y, row_str)<br>    y -= 20  # 行間<br><br># 保存<br>c.save()<br>print("PDFファイルが作成されました！")<br></code></pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc21">✅ 実行するとこうなる！</span></h3>



<ul class="wp-block-list">
<li>タイトルつきのA4レポートが出力されます</li>



<li>各行の売上情報がきれいに並んで表示されます</li>



<li>レイアウトやフォントも自由に調整可能！</li>
</ul>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc22">📌 PDF出力のポイント</span></h3>



<ul class="wp-block-list">
<li><code>drawString(x, y, テキスト)</code>でテキストの配置ができます（左下が原点）</li>



<li>ループを使えば、DataFrameの行をすべてPDFに出力できます</li>



<li>グラフをPDFに追加するには、画像として一度保存 → <code>drawImage()</code>で貼り付け可能です</li>
</ul>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc23">💡 おまけ：HTMLテンプレートでPDF出力したい人は？</span></h3>



<p>よりきれいなデザインにしたい人は、以下の方法もおすすめです：</p>



<ul class="wp-block-list">
<li><code>pdfkit</code> + <code>wkhtmltopdf</code>（HTML＋CSSで見た目を整えてからPDF化）</li>



<li>Jinja2などでテンプレートにデータを差し込み → 自動PDF出力</li>
</ul>



<p>これは中級向けですが、別記事で紹介予定です！</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>


<p><script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-2494518121553371"
     crossorigin="anonymous"></script><br />
<ins class="adsbygoogle"
     style="display:block; text-align:center;"
     data-ad-layout="in-article"
     data-ad-format="fluid"
     data-ad-client="ca-pub-2494518121553371"
     data-ad-slot="2936039508"></ins><br />
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script></p>



<h2 class="wp-block-heading"><span id="toc24">5. ステップ3｜レポートをメールで自動送信する</span></h2>



<p>PDFのレポートが完成したら、あとは「メールで自動送信」までできたら最高ですよね！<br>Pythonを使えば、レポート作成から送信までを<strong>完全自動化</strong>できます。</p>



<p>ここでは、Gmailアカウントを使ってPDFファイルをメールで送る方法を紹介します。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc25">📦 必要なライブラリ</span></h3>



<p>標準ライブラリなので、インストールは不要です。</p>



<pre class="wp-block-preformatted"><code>import smtplib<br>from email.mime.multipart import MIMEMultipart<br>from email.mime.text import MIMEText<br>from email.mime.base import MIMEBase<br>from email import encoders<br></code></pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc26">🔐 Gmailの設定（事前に必要）</span></h3>



<p>Gmailを使う場合は、<strong>アプリパスワード</strong>を発行しておく必要があります。</p>



<h4 class="wp-block-heading"><span id="toc27">▼ アプリパスワードの手順：</span></h4>



<ol class="wp-block-list">
<li><a rel="noopener" target="_blank" class="" href="https://myaccount.google.com/">Googleアカウント</a> にログイン</li>



<li>「セキュリティ」→「2段階認証プロセス」を有効にする</li>



<li>「アプリ パスワード」を生成（例：Python Mail など）</li>



<li>生成された16文字のコードを控える（これが「メール送信パスワード」になります）</li>
</ol>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc28">📤 メール送信コード例（PDF添付つき）</span></h3>



<pre class="wp-block-preformatted"><code># メール送信設定<br>from_address = 'あなたのメールアドレス@gmail.com'<br>to_address = '相手のメールアドレス@example.com'<br>subject = '売上レポート（自動送信）'<br>body = 'お疲れ様です。\n売上レポートをお送りします。\nご確認よろしくお願いします。'<br><br># PDFファイルの名前<br>filename = '売上レポート.pdf'<br><br># メールオブジェクトを作成<br>msg = MIMEMultipart()<br>msg['From'] = from_address<br>msg['To'] = to_address<br>msg['Subject'] = subject<br><br># 本文追加<br>msg.attach(MIMEText(body, 'plain'))<br><br># 添付ファイル（PDF）<br>with open(filename, 'rb') as attachment:<br>    part = MIMEBase('application', 'octet-stream')<br>    part.set_payload(attachment.read())<br><br>encoders.encode_base64(part)<br>part.add_header('Content-Disposition', f'attachment; filename= {filename}')<br>msg.attach(part)<br><br># SMTPサーバに接続して送信<br>server = smtplib.SMTP('smtp.gmail.com', 587)<br>server.starttls()<br>server.login(from_address, 'アプリパスワード')  # ←ここにアプリパスワードを入れる<br>server.send_message(msg)<br>server.quit()<br><br>print("メールを送信しました！")<br></code></pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc29">✅ 補足：エラーが出たときの対処法</span></h3>



<ul class="wp-block-list">
<li>「SMTPAuthenticationError」が出る場合は：<br>→ アプリパスワードが間違っていないか確認<br>→ 通常のGmailパスワードではログインできません！</li>



<li>「送信先が間違っている」と出る場合：<br>→ <code>to_address</code> のアドレス形式（@以降含め）をもう一度見直してみましょう</li>
</ul>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc30">📌 メール送信の自動化でできること</span></h3>



<ul class="wp-block-list">
<li>レポートを <strong>毎朝自動送信</strong></li>



<li>ファイル名に日付を入れることも可能（例：売上レポート_2025-06-04.pdf）</li>



<li>CCやBCCも送れる（<code>msg['Cc']</code> や <code>msg['Bcc']</code> を追加）</li>
</ul>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://python.cbagames.jp/wp-content/uploads/2025/06/9d9697ea94c9608a27d0bde31599ba86-150x150.jpg" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>これで、<strong>Excel → PDF → メール送信までの完全自動レポート作成フロー</strong>が完成です！</p>
</div></div>



<hr class="wp-block-separator has-alpha-channel-opacity"/>


<p><script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-2494518121553371"
     crossorigin="anonymous"></script><br />
<ins class="adsbygoogle"
     style="display:block; text-align:center;"
     data-ad-layout="in-article"
     data-ad-format="fluid"
     data-ad-client="ca-pub-2494518121553371"
     data-ad-slot="2936039508"></ins><br />
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script></p>



<h2 class="wp-block-heading"><span id="toc31">6. 応用例｜スケジューラーと組み合わせて毎朝9時に送る</span></h2>



<p>「レポートを自動で作って、PDFにして、メールで送る」――ここまでできたら、<br>あとは**「毎日決まった時間に自動で実行される」**ようにすれば、完全自動化の完成です！</p>



<p>この章では、Pythonスクリプトを<strong>毎朝9時に自動実行する方法</strong>を紹介します。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc32">🔁 方法は2パターン</span></h3>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>方法</th><th>特徴</th></tr></thead><tbody><tr><td><code>schedule</code>ライブラリ</td><td>Python内でスケジュールを管理。シンプルで柔軟。</td></tr><tr><td>タスクスケジューラ（Windows）</td><td>OSレベルで自動実行。PC起動中に限り確実に動作。</td></tr></tbody></table></figure>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc33">✅ 方法1：scheduleライブラリで毎日9時に実行</span></h3>



<p>まずはPython内で完結するやり方から。</p>



<h4 class="wp-block-heading"><span id="toc34">▼ ライブラリのインストール</span></h4>



<pre class="wp-block-preformatted"><code>pip install schedule<br></code></pre>



<h4 class="wp-block-heading"><span id="toc35">▼ サンプルコード（関数を毎朝9時に実行）</span></h4>



<pre class="wp-block-preformatted"><code>import schedule<br>import time<br><br>def job():<br>    print("レポートを作成して送信します！")<br>    # ここにExcel → PDF → メール送信の一連の処理を呼び出す<br>    # report_auto_generate_and_send()<br><br>schedule.every().day.at("09:00").do(job)<br><br>print("スケジュールを開始します。終了するにはCtrl+Cを押してください。")<br><br>while True:<br>    schedule.run_pending()<br>    time.sleep(1)<br></code></pre>



<p>💡このコードは実行中ずっと待機して、毎日9時に処理を自動実行します。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p>⚠ 注意：このスクリプトは<strong>常に起動しておく必要があります</strong>。PCを閉じたりスリープすると動作しません。</p>
</blockquote>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc36">✅ 方法2：Windowsタスクスケジューラで自動実行</span></h3>



<p>より確実に実行したい場合は、**Windowsの標準機能「タスクスケジューラ」**がおすすめです。</p>



<h4 class="wp-block-heading"><span id="toc37">▼ 設定手順（カンタンです！）</span></h4>



<ol class="wp-block-list">
<li>スタートメニューで「タスクスケジューラ」と検索し、起動</li>



<li>右側の「基本タスクの作成」をクリック</li>



<li>タスク名を入力（例：毎日レポート送信）</li>



<li>「毎日」を選択し、開始時刻を「9:00」に設定</li>



<li>「プログラムの開始」→ Pythonの実行ファイルを選ぶ（例：<code>C:\Python311\python.exe</code>）</li>



<li>「引数の追加」にスクリプト名を入力（例：<code>C:\Users\あなた\report.py</code>）</li>
</ol>



<p>これだけで、<strong>毎朝9時に自動でスクリプトが実行される</strong>ようになります！</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc38">⏰ その他Tips</span></h3>



<ul class="wp-block-list">
<li>複数のスクリプトを順に実行したいときは、バッチファイル（<code>.bat</code>）でまとめると便利</li>



<li>ログファイルを保存して、実行結果を記録するのもおすすめです</li>



<li>エラー発生時の通知方法（Slack連携やLINE通知）も応用で可能です</li>
</ul>



<hr class="wp-block-separator has-alpha-channel-opacity"/>


<p><script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-2494518121553371"
     crossorigin="anonymous"></script><br />
<ins class="adsbygoogle"
     style="display:block; text-align:center;"
     data-ad-layout="in-article"
     data-ad-format="fluid"
     data-ad-client="ca-pub-2494518121553371"
     data-ad-slot="2936039508"></ins><br />
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script></p>



<h2 class="wp-block-heading"><span id="toc39">7. まとめ｜手動作業からの卒業で毎日をもっと効率的に</span></h2>



<p>ここまで読んでくださってありがとうございます！<br>この記事では、Pythonを使って<strong>レポート作成を自動化する方法</strong>をステップごとに紹介してきました。</p>



<p>もう一度、おさらいしておきましょう👇</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc40">✅ 自動レポート作成の流れ</span></h3>



<ol class="wp-block-list">
<li><strong>Excelファイルを自動生成</strong><br>　→ pandasとopenpyxlで売上データや業務データを成形！</li>



<li><strong>PDFファイルに出力</strong><br>　→ reportlabを使ってきれいに印刷用レポートに変換！</li>



<li><strong>メールで自動送信</strong><br>　→ smtplibとemailモジュールでPDFを添付して送信！</li>



<li><strong>毎日9時に自動実行</strong><br>　→ scheduleライブラリやタスクスケジューラで完全自動化！</li>
</ol>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<p>このように、<strong>Pythonのスクリプトを一度作ってしまえば、毎日の面倒なレポート作業を一気にラクにできます。</strong></p>



<p>特に事務職・営業職・管理職など、日報・週報・月報を提出することが多い人には、まさに“働き方改革”レベルの効果が期待できます！</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc41">💡 最後にアドバイス</span></h3>



<ul class="wp-block-list">
<li>最初はシンプルなスクリプトから始めてOK！</li>



<li>少しずつカスタマイズして、自分だけの「自動レポート職人」になろう！</li>



<li>トラブルが起きたら、原因を1つずつチェックすれば大丈夫！</li>
</ul>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://python.cbagames.jp/wp-content/uploads/2025/06/9d9697ea94c9608a27d0bde31599ba86-150x150.jpg" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>Pythonを味方につけて、<strong>あなたの毎日の作業をもっとスマートに</strong>していきましょう！</p>



<p>それでは、次回の記事もお楽しみに！</p>
</div></div>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading"><span id="toc42">よくある質問（Q&amp;A）</span></h2>



<div class="wp-block-cocoon-blocks-faq faq-wrap blank-box block-box not-nested-style cocoon-block-faq"><dl class="faq"><dt class="faq-question faq-item"><div class="faq-question-label faq-item-label">Q</div><div class="faq-question-content faq-item-content">Python初心者でも自動レポート作成はできますか？</div></dt><dd class="faq-answer faq-item"><div class="faq-answer-label faq-item-label">A</div><div class="faq-answer-content faq-item-content">
<p>はい、大丈夫です！<br>この記事ではステップごとにやさしく解説しているので、Pythonに触れたことがない人でも実践できます。コピペOKなサンプルコード付きなので安心です。</p>
</div></dd></dl></div>



<div class="wp-block-cocoon-blocks-faq faq-wrap blank-box block-box not-nested-style cocoon-block-faq"><dl class="faq"><dt class="faq-question faq-item"><div class="faq-question-label faq-item-label">Q</div><div class="faq-question-content faq-item-content">ExcelやPDFに日本語を含めても大丈夫ですか？</div></dt><dd class="faq-answer faq-item"><div class="faq-answer-label faq-item-label">A</div><div class="faq-answer-content faq-item-content">
<p>基本的には問題ありませんが、PDF出力時には<strong>日本語フォントが使えない</strong>ことがあります。<br>その場合は <code>reportlab</code> に日本語フォント（例：IPAフォント）を登録することで対応できます。</p>
</div></dd></dl></div>



<div class="wp-block-cocoon-blocks-faq faq-wrap blank-box block-box not-nested-style cocoon-block-faq"><dl class="faq"><dt class="faq-question faq-item"><div class="faq-question-label faq-item-label">Q</div><div class="faq-question-content faq-item-content">Gmail以外のメールアカウントでも自動送信できますか？</div></dt><dd class="faq-answer faq-item"><div class="faq-answer-label faq-item-label">A</div><div class="faq-answer-content faq-item-content">
<p>はい、可能です。<br>OutlookやYahooメールなども <code>smtplib</code> を使って送信できますが、それぞれSMTPサーバー情報や認証方法が異なるため、事前に調べておきましょう。</p>
</div></dd></dl></div>
]]></content:encoded>
					
					<wfw:commentRss>https://python.cbagames.jp/2025/06/04/python-report-automation/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>【初心者向け】PythonでExcelファイルを操作する方法｜openpyxlで読み書きをマスターしよう！</title>
		<link>https://python.cbagames.jp/2025/06/04/python-openpyxl-excel/</link>
					<comments>https://python.cbagames.jp/2025/06/04/python-openpyxl-excel/#respond</comments>
		
		<dc:creator><![CDATA[asukapy]]></dc:creator>
		<pubDate>Wed, 04 Jun 2025 04:19:54 +0000</pubDate>
				<category><![CDATA[Python入門]]></category>
		<category><![CDATA[Excel操作]]></category>
		<category><![CDATA[openpyxl]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[スクリプト]]></category>
		<category><![CDATA[データ処理]]></category>
		<category><![CDATA[プログラミング初心者]]></category>
		<category><![CDATA[自動化]]></category>
		<guid isPermaLink="false">https://python.cbagames.jp/?p=88</guid>

					<description><![CDATA[目次 1. はじめに｜PythonでExcelを操作したい理由2. openpyxlのインストール方法🔧 インストールは1行でOK！✅ インストールできたか確認するには？💡 よくあるエラー： pipコマンドが見つからない [&#8230;]]]></description>
										<content:encoded><![CDATA[

  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-6"><label class="toc-title" for="toc-checkbox-6">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">1. はじめに｜PythonでExcelを操作したい理由</a></li><li><a href="#toc2" tabindex="0">2. openpyxlのインストール方法</a><ol><li><a href="#toc3" tabindex="0">🔧 インストールは1行でOK！</a></li><li><a href="#toc4" tabindex="0">✅ インストールできたか確認するには？</a></li><li><a href="#toc5" tabindex="0">💡 よくあるエラー： pipコマンドが見つからない？</a></li></ol></li><li><a href="#toc6" tabindex="0">3. Excelファイルの新規作成と保存</a><ol><li><a href="#toc7" tabindex="0">📄 Excelファイルを新しく作るには？</a></li><li><a href="#toc8" tabindex="0">📝 このコードの意味を説明すると…</a></li><li><a href="#toc9" tabindex="0">✅ 実行してみよう！</a></li><li><a href="#toc10" tabindex="0">💡 ちょっとした応用：別の場所に保存したいとき</a></li></ol></li><li><a href="#toc11" tabindex="0">4. 既存ファイルの読み込みとセルの値取得</a><ol><li><a href="#toc12" tabindex="0">📂 ファイルを読み込むには？</a></li><li><a href="#toc13" tabindex="0">🔍 セルの値を読み取るには？</a></li><li><a href="#toc14" tabindex="0">🔢 row・columnで指定する方法もあるよ！</a></li><li><a href="#toc15" tabindex="0">💡 ファイルを読み込むときの注意点</a></li></ol></li><li><a href="#toc16" tabindex="0">5. セルへの書き込みとスタイル設定</a><ol><li><a href="#toc17" tabindex="0">✍ セルにデータを書き込む方法</a></li><li><a href="#toc18" tabindex="0">🎨 スタイルをつけてみよう！</a><ol><li><a href="#toc19" tabindex="0">🔍 各スタイルの意味</a></li></ol></li><li><a href="#toc20" tabindex="0">📄 スタイル付きで保存して確認しよう！</a></li><li><a href="#toc21" tabindex="0">📝 補足：セルに関数を書きたいときは？</a></li></ol></li><li><a href="#toc22" tabindex="0">6. 複数シートの操作とシートの追加・削除</a><ol><li><a href="#toc23" tabindex="0">🆕 シートを追加するには？</a></li><li><a href="#toc24" tabindex="0">❌ シートを削除するには？</a></li><li><a href="#toc25" tabindex="0">🔄 アクティブなシート（今使ってるシート）を切り替えるには？</a></li><li><a href="#toc26" tabindex="0">📋 シート名を確認したいときは？</a></li><li><a href="#toc27" tabindex="0">✅ まとめ：よく使うシート操作一覧</a></li></ol></li><li><a href="#toc28" tabindex="0">7. 実践例｜表形式データを自動でExcel出力する</a><ol><li><a href="#toc29" tabindex="0">🧾 こんなデータを出力してみよう！</a></li><li><a href="#toc30" tabindex="0">📄 Excelに書き出すコード</a></li><li><a href="#toc31" tabindex="0">✅ 出力されたExcelを開いてみよう！</a></li><li><a href="#toc32" tabindex="0">💡 応用ポイント</a></li></ol></li><li><a href="#toc33" tabindex="0">8. まとめ｜openpyxlでできることを覚えよう</a><ol><li><a href="#toc34" tabindex="0">📌 openpyxlでできることまとめ</a></li><li><a href="#toc35" tabindex="0">🤖 openpyxlを使えば、こんなこともできる！</a></li></ol></li><li><a href="#toc36" tabindex="0">よくある質問（Q&amp;A）</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">1. はじめに｜PythonでExcelを操作したい理由</span></h2>



<p>みなさん、仕事や学校で「Excel（エクセル）」を使ったことはありますか？</p>



<p>表を作ったり、データをまとめたり、グラフを作ったりと、いろんな場面で大活躍するソフトですよね。でも、もし大量のデータを手作業で入力したり、毎回同じような作業をくり返したりしていたら……ちょっと面倒ですよね？</p>



<p>そこで登場するのが <strong>Python（パイソン）</strong> です！</p>



<p>Pythonは、初心者にもやさしくて人気のあるプログラミング言語です。このPythonを使えば、「Excelファイルを自動で作成する」「データをまとめて入力・編集する」「複数のファイルをまとめて処理する」なんてことが、ボタンひとつでできちゃうんです！</p>



<p>特に便利なのが、<strong><code>openpyxl（オープンパイエクセル）</code></strong> というライブラリ。これはPythonでExcelの「.xlsxファイル」を読み書きできるようにしてくれる道具のようなものです。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<p>たとえば、こんなことができます：</p>



<ul class="wp-block-list">
<li>Excelファイルを新しく作る</li>



<li>既存のExcelファイルを読み込む</li>



<li>セルにデータを書き込む・読み取る</li>



<li>シートを追加・削除する</li>



<li>書式（文字の色や太字）を設定する</li>
</ul>



<p>つまり、<strong>Excelでやっている作業を自動化して、時間をぐっと短縮できる</strong>というわけなんです。</p>



<p>この記事では、そんな便利な<code>openpyxl</code>の使い方を、やさしくステップごとに解説していきます。</p>



<p>💡 Excel作業がちょっと大変だな…と感じているあなたにこそ、Pythonとopenpyxlはぴったりの助っ人です！</p>



<p>それでは、一緒にPythonでExcel操作をマスターしていきましょう！</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>


<p><script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-2494518121553371"
     crossorigin="anonymous"></script><br />
<ins class="adsbygoogle"
     style="display:block; text-align:center;"
     data-ad-layout="in-article"
     data-ad-format="fluid"
     data-ad-client="ca-pub-2494518121553371"
     data-ad-slot="2936039508"></ins><br />
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script></p>



<h2 class="wp-block-heading"><span id="toc2">2. openpyxlのインストール方法</span></h2>



<p>PythonでExcelファイルを操作するには、まず「<strong>openpyxl（オープンパイエクセル）</strong>」というライブラリを使えるようにする必要があります。</p>



<p>ライブラリというのは、「便利な道具箱」のようなもの。Python本体には入っていないけど、あとから追加できる機能のセットです。</p>



<h3 class="wp-block-heading"><span id="toc3">🔧 インストールは1行でOK！</span></h3>



<p>まずは、Pythonが使える環境（パソコン）で、<strong>ターミナル（Mac）</strong> や <strong>コマンドプロンプト（Windows）</strong> を開いて、次のコマンドを打ち込みましょう：</p>



<pre class="wp-block-preformatted"><code>pip install openpyxl<br></code></pre>



<p>これだけでOK！<br>インターネットから<code>openpyxl</code>が自動でダウンロードされて、Pythonで使えるようになります。</p>



<p>📝「pip（ピップ）」はPythonの道具をインストールするときによく使うコマンドです！</p>



<h3 class="wp-block-heading"><span id="toc4">✅ インストールできたか確認するには？</span></h3>



<p>念のため、ちゃんとインストールできたか確認してみましょう。以下のコードをPythonで実行してみてください：</p>



<pre class="wp-block-preformatted"><code>import openpyxl<br><br>print("openpyxlが使えるようになりました！")<br></code></pre>



<p>このように表示されれば、バッチリ準備完了です！</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc5">💡 よくあるエラー： pipコマンドが見つからない？</span></h3>



<p>「<code>pip</code>は内部コマンドまたは外部コマンド…」というエラーが出る場合は、Pythonが正しくインストールされていないか、環境変数の設定がされていない可能性があります。</p>



<p>そんなときは、こちらの記事も参考にしてください👇<br>👉 <a target="_blank" href="https://python.cbagames.jp/2025/06/01/start-idle-windows1/">【超初心者向け】WindowsでPythonを始めよう！IDLEのインストールと基本の使い方</a></p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>


<p><script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-2494518121553371"
     crossorigin="anonymous"></script><br />
<ins class="adsbygoogle"
     style="display:block; text-align:center;"
     data-ad-layout="in-article"
     data-ad-format="fluid"
     data-ad-client="ca-pub-2494518121553371"
     data-ad-slot="2936039508"></ins><br />
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script></p>



<h2 class="wp-block-heading"><span id="toc6">3. Excelファイルの新規作成と保存</span></h2>



<p>openpyxlをインストールしたら、いよいよPythonでExcelファイルを作ってみましょう！<br>ここでは、「空っぽのExcelファイルを作って、好きな名前で保存する」基本の流れを紹介します。</p>



<h3 class="wp-block-heading"><span id="toc7">📄 Excelファイルを新しく作るには？</span></h3>



<p>まずは、<code>openpyxl</code>の中にある <strong><code>Workbook</code>（ワークブック）</strong> という機能を使います。<br>ワークブックとは、Excelでいう「1つのファイル（.xlsx）」のことです。</p>



<p>次のコードを見てみましょう：</p>



<pre class="wp-block-preformatted"><code>from openpyxl import Workbook<br><br># ワークブックを新しく作る<br>wb = Workbook()<br><br># 作ったExcelファイルを保存する<br>wb.save("sample.xlsx")<br></code></pre>



<h3 class="wp-block-heading"><span id="toc8">📝 このコードの意味を説明すると…</span></h3>



<ul class="wp-block-list">
<li><code>from openpyxl import Workbook</code><br>　→ openpyxlの中から「Workbook」という機能だけを使えるようにしています。</li>



<li><code>wb = Workbook()</code><br>　→ 新しいExcelファイル（ワークブック）を作って、変数<code>wb</code>に入れています。</li>



<li><code>wb.save("sample.xlsx")</code><br>　→ 「sample.xlsx」という名前でファイルを保存しています。保存先はこのPythonファイルと同じフォルダになります。</li>
</ul>



<p>📁 ファイル名の「.xlsx」は必ずつけましょう！Excel用の拡張子です。</p>



<h3 class="wp-block-heading"><span id="toc9">✅ 実行してみよう！</span></h3>



<p>このコードを実行すると、**「sample.xlsx」**というファイルが自動で作られます。<br>開いてみると、シートが1つあるだけのシンプルなExcelですが、「Pythonで作った」と思うとワクワクしますよね！</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc10">💡 ちょっとした応用：別の場所に保存したいとき</span></h3>



<p>たとえば、デスクトップや特定のフォルダに保存したいときは、フルパスで指定しましょう。</p>



<pre class="wp-block-preformatted"><code>wb.save("C:/Users/ユーザー名/Desktop/my_excel.xlsx")<br></code></pre>



<p>※ Windowsの場合は、パスの「/」や「\」に注意してください！</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://python.cbagames.jp/wp-content/uploads/2025/06/9d9697ea94c9608a27d0bde31599ba86-150x150.jpg" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>ここまでできれば、Excelファイルを自動で作る準備はバッチリです！</p>
</div></div>



<hr class="wp-block-separator has-alpha-channel-opacity"/>


<p><script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-2494518121553371"
     crossorigin="anonymous"></script><br />
<ins class="adsbygoogle"
     style="display:block; text-align:center;"
     data-ad-layout="in-article"
     data-ad-format="fluid"
     data-ad-client="ca-pub-2494518121553371"
     data-ad-slot="2936039508"></ins><br />
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script></p>



<h2 class="wp-block-heading"><span id="toc11">4. 既存ファイルの読み込みとセルの値取得</span></h2>



<p>前の章では、新しくExcelファイルを作って保存する方法を紹介しました。<br>今度は、すでにあるExcelファイルをPythonで「開いて中身を読む」方法を見ていきましょう！</p>



<h3 class="wp-block-heading"><span id="toc12">📂 ファイルを読み込むには？</span></h3>



<p>openpyxlでは、<code>load_workbook()</code>という関数を使って、既存のExcelファイルを読み込みます。</p>



<pre class="wp-block-preformatted"><code>from openpyxl import load_workbook<br><br># Excelファイルを読み込む<br>wb = load_workbook("sample.xlsx")<br><br># アクティブなシート（最初に開かれるシート）を取得<br>ws = wb.active<br></code></pre>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p>✅ <code>wb.active</code>で、今開いている「ワークシート（表）」を扱えるようになります！</p>
</blockquote>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc13">🔍 セルの値を読み取るには？</span></h3>



<p>Excelの「A1」セルに入っているデータを読み取るには、こう書きます：</p>



<pre class="wp-block-preformatted"><code># A1セルの値を取得<br>value = ws["A1"].value<br><br>print("A1セルの中身は：", value)<br></code></pre>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p>🗒 セルは「A1」や「B3」など、Excelと同じような表記で指定できます。</p>
</blockquote>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc14">🔢 row・columnで指定する方法もあるよ！</span></h3>



<p>もし「A1ってどの位置？」ってわかりにくいときは、数字で指定する方法もあります。</p>



<pre class="wp-block-preformatted"><code># 1行目1列目（A1と同じ）の値を取得<br>value = ws.cell(row=1, column=1).value<br><br>print("1行1列の中身は：", value)<br></code></pre>



<p>こっちの書き方は、for文でたくさんのセルを扱うときにも便利です！</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc15">💡 ファイルを読み込むときの注意点</span></h3>



<ul class="wp-block-list">
<li>ファイルが見つからないときは、エラーが出るので「ファイル名」や「パス」をよく確認しましょう。</li>



<li><code>.xlsx</code>形式以外（.xlsなど）はopenpyxlでは読み込めません。</li>
</ul>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://python.cbagames.jp/wp-content/uploads/2025/06/9d9697ea94c9608a27d0bde31599ba86-150x150.jpg" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>このようにして、Excelファイルの中のデータをPythonで読み取ることができます。<br>次は、<strong>セルにデータを書き込む方法や、見た目を変えるスタイルの設定</strong>について紹介していきます！</p>
</div></div>



<hr class="wp-block-separator has-alpha-channel-opacity"/>


<p><script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-2494518121553371"
     crossorigin="anonymous"></script><br />
<ins class="adsbygoogle"
     style="display:block; text-align:center;"
     data-ad-layout="in-article"
     data-ad-format="fluid"
     data-ad-client="ca-pub-2494518121553371"
     data-ad-slot="2936039508"></ins><br />
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script></p>



<h2 class="wp-block-heading"><span id="toc16">5. セルへの書き込みとスタイル設定</span></h2>



<p>これまではExcelファイルを「作る」→「読む」という順でやってきましたが、今度は <strong>セルにデータを書き込んで、見た目（スタイル）も整える</strong> 方法を紹介します！</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc17">✍ セルにデータを書き込む方法</span></h3>



<p>まずは基本の書き込みです。セルに文字や数字を入れるには、次のようにします：</p>



<pre class="wp-block-preformatted"><code>from openpyxl import Workbook<br><br># 新しいExcelファイルを作る<br>wb = Workbook()<br>ws = wb.active  # アクティブなシートを取得<br><br># A1セルに文字を書き込む<br>ws["A1"] = "こんにちは、Python！"<br><br># B2セルに数字を書き込む<br>ws["B2"] = 123<br><br># ファイルを保存<br>wb.save("write_sample.xlsx")<br></code></pre>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p>✅ セル名（例：「A1」「B2」）を指定して、直接値を代入できます！</p>
</blockquote>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc18">🎨 スタイルをつけてみよう！</span></h3>



<p>openpyxlを使えば、セルの<strong>文字の色</strong>や<strong>太さ（太字）</strong>、<strong>背景色</strong>なども変更できます。</p>



<p>以下は、スタイルを設定する例です：</p>



<pre class="wp-block-preformatted"><code>from openpyxl.styles import Font, PatternFill<br><br># A1のフォントを太字＋赤色にする<br>ws["A1"].font = Font(bold=True, color="FF0000")<br><br># B2の背景色を黄色にする<br>ws["B2"].fill = PatternFill(start_color="FFFF00", end_color="FFFF00", fill_type="solid")<br></code></pre>



<h4 class="wp-block-heading"><span id="toc19">🔍 各スタイルの意味</span></h4>



<ul class="wp-block-list">
<li><code>Font(bold=True, color="FF0000")</code> → 太字で赤色（16進数のカラーコード）</li>



<li><code>PatternFill(...)</code> → 背景色の指定</li>
</ul>



<p>💡 Excelと同じように、カラーコードは「#FF0000」のように指定しますが、#は付けずに書きます！</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc20">📄 スタイル付きで保存して確認しよう！</span></h3>



<p>上記のコードを実行したあとに <code>write_sample.xlsx</code> を開くと、</p>



<ul class="wp-block-list">
<li>A1は赤くて太い文字</li>



<li>B2は黄色い背景に黒い数字<br>になっているはずです！</li>
</ul>



<p>ちょっとExcel職人になった気分になりますよね 😊</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc21">📝 補足：セルに関数を書きたいときは？</span></h3>



<p>Excel関数も文字列として書けばOKです：</p>



<pre class="wp-block-preformatted"><code>ws["C1"] = "=SUM(B2:B10)"  # B2〜B10の合計を計算するExcel関数<br></code></pre>



<p>Excelを開いたときに、ちゃんと関数として計算されます！</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>


<p><script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-2494518121553371"
     crossorigin="anonymous"></script><br />
<ins class="adsbygoogle"
     style="display:block; text-align:center;"
     data-ad-layout="in-article"
     data-ad-format="fluid"
     data-ad-client="ca-pub-2494518121553371"
     data-ad-slot="2936039508"></ins><br />
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script></p>



<h2 class="wp-block-heading"><span id="toc22">6. 複数シートの操作とシートの追加・削除</span></h2>



<p>Excelファイルって、1つのファイルの中に「シート」がいくつもありますよね。<br>たとえば「売上」「在庫」「社員名簿」など、目的ごとに分けて使うことができます。</p>



<p>Pythonの<code>openpyxl</code>を使えば、<strong>シートの追加・削除・切り替え</strong> なども自由自在にできます！</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc23">🆕 シートを追加するには？</span></h3>



<p>まずは新しいシートを追加してみましょう！</p>



<pre class="wp-block-preformatted"><code>from openpyxl import Workbook<br><br># 新しいExcelファイルを作成<br>wb = Workbook()<br><br># シートを追加（名前もつけられる）<br>ws_new = wb.create_sheet(title="データ一覧")<br><br># 保存<br>wb.save("multiple_sheets.xlsx")<br></code></pre>



<p>✅ <code>create_sheet()</code>で新しいシートを追加できます。名前をつけないと「Sheet2」「Sheet3」など自動で付きます。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc24">❌ シートを削除するには？</span></h3>



<p>いらないシートを削除するには、次のようにします：</p>



<pre class="wp-block-preformatted"><code># 既存のシートを削除する<br>ws_to_remove = wb["Sheet"]  # 名前でシートを取得<br>wb.remove(ws_to_remove)<br></code></pre>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p>💡 シート名は <code>wb.sheetnames</code> で確認できます！</p>
</blockquote>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc25">🔄 アクティブなシート（今使ってるシート）を切り替えるには？</span></h3>



<pre class="wp-block-preformatted"><code># 名前でシートを指定して使う<br>ws = wb["データ一覧"]<br>ws["A1"] = "これは新しいシートです！"<br></code></pre>



<p>これで、「データ一覧」という名前のシートのA1セルに文字が書き込まれます！</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc26">📋 シート名を確認したいときは？</span></h3>



<p>以下のコードで、すべてのシート名をリストで取得できます：</p>



<pre class="wp-block-preformatted"><code>print(wb.sheetnames)<br></code></pre>



<p>実行すると、たとえばこんな感じで表示されます：</p>



<pre class="wp-block-preformatted"><code>['Sheet', 'データ一覧']<br></code></pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc27">✅ まとめ：よく使うシート操作一覧</span></h3>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>操作</th><th>コマンド例</th></tr></thead><tbody><tr><td>シートの追加</td><td><code>wb.create_sheet(title="名前")</code></td></tr><tr><td>シートの削除</td><td><code>wb.remove(wb["Sheet"])</code></td></tr><tr><td>シートの一覧表示</td><td><code>wb.sheetnames</code></td></tr><tr><td>シートを使う</td><td><code>ws = wb["シート名"]</code></td></tr></tbody></table></figure>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://python.cbagames.jp/wp-content/uploads/2025/06/9d9697ea94c9608a27d0bde31599ba86-150x150.jpg" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>ここまでできれば、1ファイルでたくさんのデータをきれいに整理できます！</p>
</div></div>



<hr class="wp-block-separator has-alpha-channel-opacity"/>


<p><script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-2494518121553371"
     crossorigin="anonymous"></script><br />
<ins class="adsbygoogle"
     style="display:block; text-align:center;"
     data-ad-layout="in-article"
     data-ad-format="fluid"
     data-ad-client="ca-pub-2494518121553371"
     data-ad-slot="2936039508"></ins><br />
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script></p>



<h2 class="wp-block-heading"><span id="toc28">7. 実践例｜表形式データを自動でExcel出力する</span></h2>



<p>ここまでの内容を使えば、Excelにいろいろなデータを書き込んだり、見た目を整えたりできるようになりましたね！</p>



<p>ではここで、「<strong>Pythonでリストのデータを自動で表にしてExcelに出力する</strong>」という実践的な例を紹介します。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc29">🧾 こんなデータを出力してみよう！</span></h3>



<p>まずはPythonのリストで、表っぽいデータを用意します：</p>



<pre class="wp-block-preformatted"><code>data = [<br>    ["名前", "年齢", "職業"],<br>    ["田中太郎", 28, "エンジニア"],<br>    ["佐藤花子", 34, "デザイナー"],<br>    ["鈴木一郎", 41, "マネージャー"]<br>]<br></code></pre>



<p>これをそのままExcelの表にしてみましょう！</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc30">📄 Excelに書き出すコード</span></h3>



<pre class="wp-block-preformatted"><code>from openpyxl import Workbook<br><br># 新しいExcelファイルを作成<br>wb = Workbook()<br>ws = wb.active<br><br># データを1行ずつExcelに書き込む<br>for row in data:<br>    ws.append(row)<br><br># ファイルを保存<br>wb.save("staff_list.xlsx")<br></code></pre>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p>🔄 <code>ws.append(row)</code> で、リスト1行ぶんをそのままExcelの1行に追加できます！</p>
</blockquote>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc31">✅ 出力されたExcelを開いてみよう！</span></h3>



<p>保存された「staff_list.xlsx」を開いてみると、</p>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>名前</th><th>年齢</th><th>職業</th></tr></thead><tbody><tr><td>田中太郎</td><td>28</td><td>エンジニア</td></tr><tr><td>佐藤花子</td><td>34</td><td>デザイナー</td></tr><tr><td>鈴木一郎</td><td>41</td><td>マネージャー</td></tr></tbody></table></figure>



<p>こんな感じのきれいな表ができているはずです！</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc32">💡 応用ポイント</span></h3>



<ul class="wp-block-list">
<li><code>for row in data:</code> のループを工夫すれば、どんなデータでも対応できます。</li>



<li>行や列に応じて色を変えたり、太字にしたりすれば、見やすい帳票も作れます。</li>



<li>pandasライブラリと組み合わせると、もっと大規模なデータ処理も簡単にできます（※中級者向け）</li>
</ul>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://python.cbagames.jp/wp-content/uploads/2025/06/9d9697ea94c9608a27d0bde31599ba86-150x150.jpg" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>ここまでできれば、PythonでExcelに自動でデータ出力する力が身についたと言っていいでしょう！</p>
</div></div>



<hr class="wp-block-separator has-alpha-channel-opacity"/>


<p><script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-2494518121553371"
     crossorigin="anonymous"></script><br />
<ins class="adsbygoogle"
     style="display:block; text-align:center;"
     data-ad-layout="in-article"
     data-ad-format="fluid"
     data-ad-client="ca-pub-2494518121553371"
     data-ad-slot="2936039508"></ins><br />
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script></p>



<h2 class="wp-block-heading"><span id="toc33">8. まとめ｜openpyxlでできることを覚えよう</span></h2>



<p>ここまで、PythonでExcelファイルを扱うためのライブラリ「<strong>openpyxl</strong>」の基本を学んできました。</p>



<p>最初は「ちょっと難しそう…」と思ったかもしれませんが、実際にやってみると「意外とカンタン！」って感じませんでしたか？😊</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc34">📌 openpyxlでできることまとめ</span></h3>



<p>記事で紹介した内容を、もう一度まとめておきます：</p>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>機能</th><th>やったことの例</th></tr></thead><tbody><tr><td>Excelファイルの作成</td><td><code>Workbook()</code> を使って新規ファイルを作成</td></tr><tr><td>ファイルの保存</td><td><code>wb.save("名前.xlsx")</code></td></tr><tr><td>ファイルの読み込み</td><td><code>load_workbook("名前.xlsx")</code></td></tr><tr><td>セルの読み書き</td><td><code>ws["A1"] = "こんにちは"</code> / <code>value = ws["A1"].value</code></td></tr><tr><td>セルのスタイル設定</td><td>文字色・太字・背景色などの設定</td></tr><tr><td>シートの操作</td><td>シートの追加・削除・切り替え</td></tr><tr><td>表形式データの出力</td><td><code>ws.append()</code>でリストをそのままExcelに出力</td></tr></tbody></table></figure>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc35">🤖 openpyxlを使えば、こんなこともできる！</span></h3>



<ul class="wp-block-list">
<li>毎日の売上データを自動で記録</li>



<li>シフト表や名簿を簡単に作成</li>



<li>データをまとめて加工して、レポートを自動生成</li>
</ul>



<p>などなど、<strong>Excel作業の「自動化」がどんどん進みます！</strong></p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading"><span id="toc36">よくある質問（Q&amp;A）</span></h2>



<div class="wp-block-cocoon-blocks-faq faq-wrap blank-box block-box not-nested-style cocoon-block-faq"><dl class="faq"><dt class="faq-question faq-item"><div class="faq-question-label faq-item-label">Q</div><div class="faq-question-content faq-item-content">openpyxlで<code>.xls</code>ファイル（古いExcel形式）は扱えますか？</div></dt><dd class="faq-answer faq-item"><div class="faq-answer-label faq-item-label">A</div><div class="faq-answer-content faq-item-content">
<p>残念ながら、<strong>openpyxlは<code>.xlsx</code>形式専用</strong>のライブラリです。<br>古い<code>.xls</code>ファイルを扱いたい場合は、<code>xlrd</code>や<code>xlwt</code>といった別のライブラリを使う必要があります。<br>また、<code>.xls</code>ファイルを一度Excelで開いて、<code>.xlsx</code>に変換してから使う方法もおすすめです。</p>
</div></dd></dl></div>



<div class="wp-block-cocoon-blocks-faq faq-wrap blank-box block-box not-nested-style cocoon-block-faq"><dl class="faq"><dt class="faq-question faq-item"><div class="faq-question-label faq-item-label">Q</div><div class="faq-question-content faq-item-content">セルの罫線やフォントサイズも変更できますか？</div></dt><dd class="faq-answer faq-item"><div class="faq-answer-label faq-item-label">A</div><div class="faq-answer-content faq-item-content">
<p>はい、<strong>openpyxl.styles</strong>モジュールを使えば、以下のような見た目のカスタマイズが可能です：</p>



<ul class="wp-block-list">
<li>フォントの種類・サイズ・太字・斜体</li>



<li>文字色・背景色</li>



<li>セルの罫線・塗りつぶし</li>



<li>セルの結合や高さ・幅の調整</li>
</ul>



<p>基本的な書類の装飾はほぼ対応できます！</p>
</div></dd></dl></div>



<div class="wp-block-cocoon-blocks-faq faq-wrap blank-box block-box not-nested-style cocoon-block-faq"><dl class="faq"><dt class="faq-question faq-item"><div class="faq-question-label faq-item-label">Q</div><div class="faq-question-content faq-item-content">Excel関数を使うことはできますか？</div></dt><dd class="faq-answer faq-item"><div class="faq-answer-label faq-item-label">A</div><div class="faq-answer-content faq-item-content">
<p>できます！<br>セルに文字として「<code>=SUM(A1:A10)</code>」のように式を書けば、<strong>関数として認識されて計算されます</strong>。<br>ただし、計算結果はExcelを開いたときに更新されるため、<strong>Python側では計算は実行されません</strong>。</p>
</div></dd></dl></div>
]]></content:encoded>
					
					<wfw:commentRss>https://python.cbagames.jp/2025/06/04/python-openpyxl-excel/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
