pythonのopenpyxlとVBAではどちらのほうが使いやすい?
pythonのopenpyxlはエクセルファイルを扱うためのモジュールです。これを使用することにより、わりと簡単にプログラムを書くことができます。
openpyxlモジュールを使用したPythonコード
import openpyxl wb = openpyxl.Workbook() sheet = wb.active hoge = ['10', '20', '30'] fuga=0; i=1 for h in hoge: fuga = fuga + int(h) sheet['A'+str(i)] = fuga i+=1 wb.save('test.xlsx')
pythonのエクセル操作をやるときによいところは、sheet[‘A’+str(i)]とセルのところで式展開できることです。
エクセルVBAのプログラムコードはどんな感じ?
VBAは
sheets(1).cells(i, 1)のようにcells()を使うことができます。
vbaのrange[“A1”]のような書き方は式展開はできません。
一方pythonにはcell(row=, column=)があります。しかしこちらは値の参照のみとなっているようで、実質書き込みには使えないようです。
結論: 普通にVBAを使ったほうがいいかも
VBAでもウェブスクレイピングはできるみたいですが、pythonだったらbs4やseleniumを使って取得したものをopenpyxlを使って書き込んだりできるようです。VBAの場合は隣にエクセルがあるというのが強い気がします。
コメント