以前、pythonのライブラリであるopenpyxlを用いたExcel処理について取り上げました。今回も同様な内容ですが、何とかExcelファイルの自動化処理を覚えたいので、またしばらくお付き合いください。何度もやっているうちにpythonも身についていくものと思っています。
資料はこちら → Excel(python)その1
p.1 説明資料は、左側にコード(プログラム)、左下に実行結果、右側にコードの説明を記するようにします。最初にimportでopenpyxlを取り込みます。続いて、「excel.Workbook() ←新規ワークブック作成」「book.active ← アクティブなワークシート取得」の2つは、ほぼ毎回使います。セルに値(文章含む)を書き込む方法は3種類ほどあります。①[セル名]を指定して値を書き込む、②行(row)と列(colum)を指定して書き込む、そして③任意のセル取得後、値を書き込む方法です。 ②の行と列番号は1から始まります。通常pythonでは0から始まりますが、Excelの番号は1が起点ですので、間違えないでください。
p.2 連続処理につかうオーソドックスな「for」の使い方です。「for i in range(10) 」の10は、pythonの場合、0起点にして10個なので0~9を「i」に入れることになります。1列目の1行から9行目まで、iの数字が入っていきます。右下のコードが繰り返されます。
p.3 九九の表を作成します。今回は、行方向だけでなく列方向にも繰り返されます。for文の中にfor文が入子状態になっています。rangeは(1,10)とし、y及びxを1~9まで変化させます。セル取得は「sheet.cell(y, x)」でもOKです。 繰返しは、実行結果の赤線のようにジグザグに進んで行きます。
p.4 Excelの自動化で良く使うコードです。セル番号を取得するには「cell.value = cell. cordinate」でできてしまいます。簡単ですね。
本日は、基本的な操作をまとめてみました。 本日使用したコードをワードに貼り付けておきましたので、IDLE、jupyter notebookあるいはVisual Studio Codeに貼り付けて実行してみてください。 保存する場所(最後の1行のコード)は、ご自身の保存フォルダのパス名を書いてください。
コードはこちら → code