「ColabでExcelの表データを読み出し」記事では、Excelの表データを Colab (Google Colaboratory)のセッションに読み込む方法を簡単にご紹介しました。
今回は、その逆、Colabのセッション内の表データを Google DriveあるいはローカルPCに Excel形式で書き出す方法をご紹介します。
それでは、Google Driveを開いて「Google Colaboratory」のノートブックを開きます。
これは、新規に作成してもよいですし、先回使ったノートブックを開いても結構です。
新規作成したときは「コードセル」内に、既存のノートブックを使うときは「+コード」をクリックして新たな「コードセル」を作りその中に、以下のコードを入力してください。
import openpyxl as op
# 保存Excelブック
wb = op.Workbook()
wb.save('mybook.xlsx')
入力したら実行してみましょう。
「コードセル」の左端にある実行ボタンまたは [Ctrl]+[Enter]キーを押します。
実行しても何も起きていないように見えますが、画面左側の [ファイル]メニューを開くと「mybook.xlsx」が作成されたことが分かります。(下図)
この Excelブックは Colabのセッション内に格納されており、まだ Google Driveに保存されているわけではありません。
次に、以下のコードを上記コードに続いて入力し実行してみてください。
ws = wb['Sheet'] # ワークシートを指定
ws = wb.active # アクティブなワークシートを選択
これで、「mybook.xlsx」に「Sheet」という見出しのワークシートが出来ました。
それでは、このシートの A1セルにテキストを入力してみます。
次のコードを続けて入力し実行します。
ws['A1'] = 'Hello, Google Colaboratory!'
wb.save('mybook.xlsx')
上手く入力出来たか確かめてみるには、先回同様にシート内のデータ読み出してもよいし、左側のファイルリスト中に見える「mybook.xlsx」をマウス右クリックし「ダウンロード」を選択してもよいです。
今度は、次のコードに替えて数値を入力してみましょう。
for x in range(1,11):
for y in range(1,11):
ws.cell(row=x, column=y, value=x * y)
wb.save('mybook.xlsx')
入力出来たら実行しましょう。
「mybook.xlsx」をダウンロードして開いてみると、下図のように出来上がっていました。
今回の例では、セルに直接データを入力してシートを作成していましたが、実際は何らかの処理をしてシート内のデータを完成させ、それをダウンロードするという流れになると思います。
いずれにしても Colab (Google Colaboratory)の中では少しずつコードを書いていきながら実行させ、もしエラーが出たらそれに対処して進めていけますので Python“学習用”に好適なツールであろうと思われます。