★悩み★
・PythonでExcelファイルのセルに数式や関数の書き込みってできるの?
・PythonのOpenPyXLライブラリでExcelに数式を書き込む手順を知りたい。
・PythonのOpenPyXLライブラリでExcelに関数を書き込む手順を知りたい。
こういった「悩み」に答えます。
★本記事の内容★
① PythonのOpenPyXLでExcelに数式(関数)を書き込みする為の準備を紹介
② PythonのOpenPyXLで「Excelに数式(関数)を書き込みする」手順を紹介
これからご紹介する「【OpenPyXL】PythonでExcelに数式(関数)を書き込みする手順」を実践したことで、10分以内で「PythonのOpenPyXLを用いてExcelのセルに数式と関数を書き込み」できました。
記事の前半では「PythonのOpenPyXLでExcelに数式(関数)を書き込みする為の準備」を解説しつつ、記事の後半では「PythonのOpenPyXLで「Excelに数式(関数)を書き込みする」手順」を紹介します。
この記事を読み終えることで、「PythonのOpenPyXLを用いてExcelのセルに関数と数式を書き込みできる」状態になります。
★OpenPyXLとは★
OpenPyXLは、Pythonの外部ライブラリです。OpenPyXLを利用することで、PythonからExcelファイル(xlsx/xlsm/xltx/xltm)を操作(読み込みや書き込み)できます。
参照:OpenPyXLの公式サイト
ちなみに、「OpenPyXLのExcelファイルへの書き込みに関連する機能」に関して知りたい方は、以下の記事をご覧ください。
PythonのOpenPyXLでExcelに数式(関数)を書き込みする為の準備
「PythonのOpenPyXLでExcelに数式(関数)を書き込みする為の準備」に関してご紹介します。
★PythonのOpenPyXLでExcelに数式(関数)を書き込みする為の準備★
手順1:Pythonをインストール
手順2:Pythonの「OpenPyXL」ライブラリをインストール
上記の流れで、「PythonのOpenPyXLでExcelに数式(関数)を書き込みする為の準備」ができます。
上記の各手順は、以下の日時と環境で動作確認済みです。
動作確認済み日時:2021年7月11日
動作確認済み環境:macOS
以降で、上記「PythonのOpenPyXLでExcelに数式(関数)を書き込みする為の準備」の各手順に関してご説明します。
手順1:Pythonをインストール【OpenPyXLの利用に必要】
「手順1:Pythonをインストール」に関してご説明します。
OpenPyXLでExcelに数式や関数を書き込むために、Pythonをインストールしましょう。
以下の記事を参考にし、お使いのパソコンやサーバーにPythonをインストールしましょう。
>> 【ubuntu向け】pyenvでPythonをインストールする手順【簡単】
>> 【コピペOK】pyenvでPythonをインストールする手順【Linux用】
>> 【最短5分】PyAutoGUIをWindowsにインストールする手順の「手順1:Pythonのインストール」を参照
>> 【環境構築】インストーラーでMacOSにPythonをインストール
既にPythonをインストールされている方は、本手順を省略してください。
以上で、「手順1:Pythonをインストール」は完了です。
手順2:Pythonの「OpenPyXL」ライブラリをインストール
「手順2:Pythonの「OpenPyXL」ライブラリをインストール」に関してご説明します。
PythonでExcelに数式や関数を書き込みするために、OpenPyXLをインストールしましょう。
「OpenPyXLのインストール手順」に関しては、以下の記事「手順2:Pythonの「OpenPyXL」ライブラリをインストール」をご覧ください。
以上で、「手順2:Pythonの「openpyxl」ライブラリをインストール」は完了です。
上記の流れで、PythonのOpenPyXLを用いてExcelのセルに関数や数式を書き込みする為の準備ができました。
PythonのOpenPyXLで「Excelに数式(関数)を書き込みする」手順
PythonのOpenPyXLで「Excelに数式や関数を書き込み」に関してご紹介します。
★PythonのOpenPyXLで「Excelに数式(関数)を書き込みする」手順★
・PythonのOpenPyXLで「Excelファイルのセルに関数」を書き込み
・PythonのOpenPyXLで「Excelファイルのセルに数式」を書き込み
PythonのOpenPyXLライブラリを利用することで、上記のプログラムを簡単に実装できます。
上記の各手順は、以下の日時と環境で動作確認済みです。
動作確認済み日時:2021年7月11日
動作確認済み環境:macOS
以降で、上記「PythonのOpenPyXLで「Excelに数式(関数)を書き込みする」手順」の各項目に関してご説明します。
PythonのOpenPyXLで「Excelファイルのセルに関数」を書き込み
「PythonのOpenPyXLで「Excelファイルのセルに関数」を書き込み」に関してご説明します。
PythonのOpenPyXLライブラリを利用することで、Excelファイルのセルに関数を簡単に書き込みできます。
PythonのOpenPyXLを用いて「Excelファイルのセルに関数を書き込みする」プログラムは、以下のGitHubに掲載されたものとなります。
Excelファイルのセルに関数を書き込みするプログラム@GitHub
上記GitHubに掲載したプログラムの95行目から98行目が「Excelファイルのセルに関数を書き込みする」部分です。
for r in range(max_row):
search_word = str(env_compare_sheet.cell(row=r+4, column=1).value) + str(env_compare_sheet.cell(row=r+4, column=2).value)
siki = "=VLOOKUP(\"" + str(search_word) + "\",前版の内容!A4:D5,4,0)" # 関数の作成
env_compare_sheet.cell(row=r+4, column=3).value = siki
上記のように関数を記述することで、PythonのOpenPyXLで「Excelファイルのセルに関数」を書き込みができます。
以上が、「PythonのOpenPyXLで「Excelファイルのセルに関数」を書き込み」となります。
PythonのOpenPyXLで「Excelファイルのセルに数式」を書き込み
「PythonのOpenPyXLで「Excelファイルのセルに数式」を書き込み」に関してご説明します。
PythonのOpenPyXLライブラリを利用することで、Excelファイルのセルに数式を簡単に書き込みできます。
PythonのOpenPyXLを用いて「Excelファイルのセルに数式を書き込みする」プログラムは、以下のGitHubに掲載されたものとなります。
Excelファイルのセルに数式を書き込みするプログラム@GitHub
上記GitHubに掲載したプログラムの107行目から109行目が「Excelファイルのセルに数式を書き込みする」部分です。
for r in range(max_row):
siki = "=IF(C" + str(r+4) + "=D" + str(r+4) + ",\"ok\",\"NG\")" # 数式の作成
env_compare_sheet.cell(row=r+4, column=5).value = siki
上記のように数式を記述することで、PythonのOpenPyXLで「Excelファイルのセルに数式」を書き込みができます。
ちなみに、GitHubに掲載した「Excelファイルのセルに数式と関数を書き込みする」プログラムは、以下のように実行します。
$ git clone https://github.com/hero-kakedashi/python_openpyxl_sample.git
$ cd python_openpyxl_sample
$ ls
sample_write_formula_method.py
$ python sample_write_formula_method.py
上記コマンド実行後、「sample.xlsx」のExcelファイルが作成された場合、「Excelファイルのセルに数式と関数を書き込みするプログラムが正常に動作した」と判断できます。
以上が、「PythonのOpenPyXLで「Excelファイルのセルに数式」を書き込み」となります。
PythonのOpenPyXLを用いることで、Excelファイルのセルに数式と関数の書き込みを簡単に実現できました。
ちなみに、「PythonのOpenPyXLを使って仕事を楽にできないかな?」と言った具体的な使い道を知りたい方には、以下の参考書がお勧めです。
動画で学びたい方には、以下がお勧めです。
【まとめ】PythonでExcelに数式(関数)を書き込みする手順【OpenPyXL】
今回の記事を通して、「【OpenPyXL】PythonでExcelに数式(関数)を書き込みする手順」をご紹介することで、以下の悩みを解消しました。
★悩み★
・PythonでExcelファイルのセルに数式や関数の書き込みってできるの?
・PythonのOpenPyXLライブラリでExcelに数式を書き込む手順を知りたい。
・PythonのOpenPyXLライブラリでExcelに関数を書き込む手順を知りたい。
「PythonでExcelファイルのセルに数式や関数の書き込みってできるの?」で悩んでいるあなたにこの記事が少しでも役に立てれば幸いです。
コメント