LoginSignup
0
1

More than 1 year has passed since last update.

Excel業務(無駄)を自動化したい part3 番外編1代入できるのは文字だけ?

Posted at

はじめに

このサイトでは、社会人なりたての私が無駄を省くための戦いをまとめています。
今回のテーマは、pythonのライブラリを用いて、Excelをいじっていきます。
ライブラリ名は、openpyxlです。

実行環境

Windows10
Python 3.10.5

openpyxlとは?

openpyxlはExcelファイル(.xlsx)を読み書きできるツールです。
公式ドキュメント openpyxl/openpyxl-Bitbucket
詳しくはこちら!
今回はExcelファイル内のデータを読み込んで、分析するのではなく、
代入したいだけなので、pandasではなくopenpyxlを使用しています!

Excelに値を代入!

Excelに値を代入する方法は以前触れたので、今回はどんな値を代入できるのかについて
書いていきます。
参考資料  Excel業務(無駄)を自動化したい part1 Excelに値を代入しよう

どんな値を代入できるのか調べたところ、文字列のみ代入できることが分かりました。
これで終了ではなく、ここからが問題で、
Excelには文字列であればなんでも代入することができます。

代入できるもの

分かりやすいものは、単純な文字列、数値などがあります。
プラスしてExcelに**数式(関数)**を代入することができます。

数式を代入
str = "代入OK!"
ws['A1'].value = str
ws['A3'].value = "=A1"

print(ws['A3'].value)
# "=A1"

文字列として代入することで、数式を無理やり代入することができます。
出力結果が以下の画像です。
スクリーンショット 2022-10-19 192651.png

誰得かわかりませんが、pythonを用いたマクロみたいなものを作ることができます。
数式に関しては、Excelで使えるものはすべて代入できるはず…です。

終わりに

見つけたすぐのタイミングのときは大発見だと喜びましたが、よくよく考えたら、全部pythonでよくね?という感想が出てきたので、使いたい人は使ってみてください。私は、マクロの勉強したくないので、もう少し使っていこうと思います。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1