OpenPyXL インストール
OpenPyXLはPythonの環境でExcelを操作できるライブラリの一つです。
特にセルの値などの入力やセルの書式設定も容易にできるので覚えておいて損はないライブラリです。
今回は数式を入力すること、数式の中に変数を使って連続的な処理をする実用的なテクニックまで紹介していきます。
Python環境の導入がまだの方はこちらの記事を先に読んでください。
【2020年版、Python3をはじめよう!(Mac&Win対応)】AnacondaとJupyter notebookの始め方
はじめに
Jupyter notebookとは
Jupyter notebook(ジュピター・ノートブック)はブラウザ上で...
AnacondaのJupyter notebookを開き、以下の一行を実行することでインストール完了です。
pip install openpyxl
Excelファイルの読み込み
まずはOpenXLをインポートします。
import openpyxl
データフレームにエクセルを読み込みます。(df_in)
df_in=openpyxl.load_workbook('test.xlsx')
出力するファイル名はdf_outとしておきます。
df_out=df_in.active
セルへ値を代入する
df_out.cell(row=1,column=1,value='日付')
datetimeのライブラリをインポートしておけば今日の日付を入力することも可能です。
import datetime
df_out.cell(row=2,column=1,value=datetime.date.today())
基本的な数式の入力とfor文による変数を使った数式の入力
TEXT関数で曜日を返すことができます。
df_out.cell(row=3,column=1,value='=TEXT(A2,"aaaa")')
“aaaa”は日本語で省略しない曜日の表示形式です。
編集したシートを保存する
df_out.save(test_out.xlsx)
ここまでの結果はこんな感じです。
for文を使った場合の記述方法
if文でA列にデータがあれば●、なければ×を入力する例です。
for i in range(1,5):
df_out.cell(row=i,column=2,value='=if(A'+str(i)+'>0,"●","×")')
ここまで実行して、ファイルを開いてみましょう。
どうでしょうか。関数も思いのままに操作できました。