pythonはExcelの.xlsxのデータを操作する事ができます。
前回、pythonでExcelのデータを読み込む方法を紹介しましたが、今回はpythonでExcelのデータを書き込む方法を紹介します。
ただしxlrdとは別のパッケージを利用する必要があります。
pipによるパッケージのインストール
pythonによるエクセルファイルの書き込みをするにはxlwtというパッケージをpipでインストールする必要があります。
利用する方法はpipでPythonのパッケージをインストールする方法を参考にしてください。
インストールするパッケージはxlwtです。
pip install xlwt
pipのコマンドはこれになります。
xlwtを使ったエクセルデータの読み込み
#xlwtをインポートする import xlwt #エクセルオブジェクトの作成 xl_bk = xlwt.Workbook() #新しいシートの作成 newsheet1=xl_bk.add_sheet('NewSheet1') newsheet2=xl_bk.add_sheet('NewSheet2') #セルにデータを書き込む newsheet1.write(1,0,"データ1") newsheet2.write(0,1,777) #エクセルデータの保存 xl_bk.save('test2.xlsx')
.xlsxファイルを書き込むには、まずxlwtをインポートします。
インポートする方法は
import xlwt
と他の命令を使う前に宣言しておきます。
空のエクセルオブジェクトの作成方法
xl_bk = xlwt.Workbook()
エクセルオブジェクトの変数 = xlwt.Workbook()
xlwt.Workbook()で作ったエクセルオブジェクトにシート等を追加していきます。
エクセルオブジェクトに新しいシートの作成方法
newsheet1=xl_bk.add_sheet('NewSheet1')
シートオブジェクト = xl_bk.add_sheet( シートの名前 )
新しいシートを作り返値としてシートオブジェクトが得られます。
このシートオブジェクトに対してセルの情報を入力する事ができます。
セルにデータを書き込む
newsheet1.write(1,0,"データ1")
シートオブジェクト .write( 列(横) , 行(縦) , 保存させる値 )
writeで保存させる値を0から始まる数字で列と行を指定して入れます。
保存させる値は数値でも文字列でも可能です。
エクセルオブジェクトを保存する
xl_bk.save('test2.xlsx')
エクセルオブジェクト.save( ファイル名 )
最後に保存させるファイル名をxl_bk.saveに指定して保存します。
他にもExcelのデータを読み書きできるパッケージはpandas等が存在しています。
xlwtが使い難い場合は、そちらを使ってみると良いかもしれません。