【ワークブックを作成する】

 1 『Visual Studio Code』をつかう

 2 xlwingsをつかいWorkbookを新規作成しファイル保存

 3 xlwingsをつかい既存Workbookを読みこみファイル保存

xlwingsをつかいWorkbookを新規作成しファイル保存

 今回は、Python-xlwingsでExcelワークブックを新規作成しファイル保存してみます。

 先ず、Python新規ファイルとして『Python_Excel2.py』を作成します。

Img1_2_01

 『Visual Studio Code』をつかうPython_Excel1.pyを作成したのと同じ手順で、

 Python_Excel2.pyを作成しました。

 それでは、PythonでExcelワークブックを新規作成しファイル保存してみます。



1 xlwingsをインポート

 PythonでExcelワークブックを操作するために、xlwingsという外部ライブラリを利用します。

 外部ライブラリとは、外部からインストールすれば利用できるライブラリのことです。

 ライブラリとは、複数のモジュールをまとめたもののことです。

 モジュールとは、Pythonのプログラムファイル、つまり『~.py』ファイルのことです。


 ライブラリにはPythonにもともと組み込まれている『標準ライブラリと、

 Pythonにもともと組み込まれていなくて、新たに外部からインストールして

 ストレージ(SSD/HDD)に保存する必要がある『外部ライブラリがあります。

 『標準ライブラリ』だけでは実現できない機能も『外部ライブラリ』を用いれば

 簡単に実現できるようになります。

 Pythonは他の言語に比べて圧倒的に実用的な『外部ライブラリ』が充実しているため、

 非常に便利なプログラミング言語といえます。


 Pythonでは、Excelワークブックを操作する機能が

 『標準ライブラリ』だけでは実現できないため、

 『外部ライブラリ』のxlwingsというライブラリを利用して

 Excelワークブックを操作する機能を実現します。

 xlwingsはAnacondaのインストールに含まれているため、

 Anacondaを使ってPythonをインストールしている場合、

 ライブラリの追加インストールは不要です。

 『外部ライブラリ』のxlwingsを利用するときは、次のような書式となります。

Imgxw1_2_01

 import』文を使うと、ストレージ(SSD/HDD)の『xlwings』ライブラリをメモリに読みこむことができます。


 print('PythonでExcel操作')の『Print()』は、Pythonプログラムの実行時、

 メモリ上に既に準備されている組み込み関数です。

 つまり、何もしなくても即時に利用することができる関数です。

 だけど、ストレージ(SSD/HDD)の『xlwings』ライブラリのモジュール内の情報は、

 Pythonプログラムの実行時、メモリ上に、まだ準備されていません。

 つまり、ストレージ(SSD/HDD)からメモリ上に明示的に読みこんでおかないと、

 その情報を利用することができません。

 モジュール内の情報をストレージ(SSD/HDD)からメモリ上に明示的に読みこませる

 役割を果たすのが『import』文です。


 ソースコードパネルの1行目に、次のように書きこみます。

import xlwings

 これは、xlwingsライブラリからすべての情報をインポートして使えるようにするという意味です。

Img1_2_02

 ソースコードパネルの1行目に、import xlwingsを書きこみました。



2 BookクラスからWorkbookオブジェクトを生成

 次に、BookクラスからWorkbookオブジェクトを生成します。

 Workbookオブジェクトとはメモリ上に生成されたExcelのWorkbookのことです。

 オブジェクトとは、あるデータを保持するためのメモリ上のかたまりのことです。

 WorkbookオブジェクトとはWorkbookデータを保持するためのメモリ上のかたまりのことです。

 Pythonで、Excelワークブックを新規作成するときは、xlwingsライブラリのBookクラスから、

 いったんWorkbookオブジェクトを生成します。


 クラスとは、特定のオブジェクトのデータ構造(一定の属性と関数)を定義したものです。

 つまりBookクラスとはExcelのWorkbookオブジェクトのデータ構造を定義したものです。

 言い換えると、BookクラスとはExcelのWorkbookの設計書を組み込んだ

 オブジェクト製造機のようなものです。


 Workbookオブジェクトを生成するということは、Bookクラスから、

 メモリ上にWorkbookをつくりだすということです。


 BookクラスからWorkbookオブジェクトを生成するときは、次のような書式となります。

Imgxw1_2_02

 Workbookオブジェクト名 = xlwings.Book()の書式を実行すれば、

 外部ライブラリ『xlwings』のBookクラスから、

 メモリ上にWorkbookオブジェクトを生成することができます。


 ソースコードパネルの2行目に、次のように書きこみます。

wb = xlwings.Book()

 これは、xlwings』のBookクラスから、

 メモリ上に『wb』という名称のWorkbookオブジェクトを生成するという意味です。

Img1_2_03

 ソースコードパネルの2行目に、wb = xlwings.Book()を書きこみました。



3 WorkbookオブジェクトをWorkbookファイルとして保存

 先ほど、wb = xlwings.Book()によって、

 外部ライブラリ『xlwings』のBookクラスから、

 メモリ上にWorkbookオブジェクトを生成するようにしました。


 メモリはデータ処理を行う作業領域となる装置であって、データを一時的に記憶するだけです。

 ストレージ(SSD/HDD)のようにデータを保存、つまり長期的に記憶することはできないため、

 Workbookがまだメモリ上にしか存在していない状態のままWorkbookを閉じたら、

 Workbookストレージ(SSD/HDD)に保存されないまま、メモリ上から消えてしまいます。

 せっかく、メモリ上につくりだされたWorkbookオブジェクトを消さずにパソコンに保存するためには、

 ストレージ(SSD/HDD)にWorkbookファイルとして保存する必要があります。


 WorkbookオブジェクトをWorkbookファイルとして保存するときは、次のような書式となります。

Imgxw1_2_03

 ソースコードパネルの3行目に、次のように書きます。

wb.save('PythonでExcel操作.xlsx')

 これは『wb』という名称のWorkbookオブジェクトを、

 『PythonでExcel操作.xlsx』という名称のWorkbookファイルとして保存するという意味です。

Img1_2_04

 ソースコードパネルの3行目に、wb.save('PythonでExcel操作.xlsx')を書きこみました。



4 Workbookオブジェクトを閉じる

 先ほど、wb.save('PythonでExcel操作.xlsx') によって、

 メモリ上につくりだされた『wb』という名称のWorkbookオブジェクトを、

 ストレージ(SSD/HDD)に『PythonでExcel操作.xlsx』という名称でWorkbookファイルとして保存しました。

 でも、『wb』という名称のWorkbookオブジェクトは、メモリ上に残ったままです。

 そこで、メモリ上に残った『wb』という名称のWorkbookオブジェクトを閉じることにします。


 Workbookオブジェクトを閉じるときは、次のような書式となります。

Imgxw1_2_04

 ソースコードパネルの4行目に、次のように書きます。

wb.close()

 これは『wb』という名称のWorkbookオブジェクトを閉じるという意味です。

Img1_2_05

 ソースコードパネルの4行目に、wb.close()を書きこみました。



5 『PythonでxlwingsをつかいWorkbookを新規作成しファイル保存』の一連の処理

Img1_2_06

 それでは、『Python_Excel2.py』を実行してみます。

 右向き三角形ボタンをクリックします。


Img1_2_07

 ソースコードパネルの下にターミナルパネルが現れて

 『Python_Excel2.py』が正常に実行されたことが表示されました。

 更にエクスプローラーパネルには『PythonでExcel操作.xlsx』という名称の

 Workbookファイルが新たに表示されました。


 これは、『PythonでExcel操作.xlsx』という名称のWorkbookファイル

 新規作成されたということです。試しに、エクスプローラーを見てみます。

Img1_2_08

 エクスプローラーを見てみると、『Python_Excel2.py』のカレンドフォルダに『PythonでExcel操作.xlsx』

 という名称のWorkbookファイルが新規作成されています。


 では、『PythonでExcel操作.xlsx』を開いてみます。

Img1_2_09

 『PythonでExcel操作.xlsx』を開きました。

 このようにPythonでxlwingsをつかいWorkbookを新規作成したときは、シート名『Sheet1』というシートが

 一つだけ作成されています。


 PythonでxlwingsをつかいWorkbookを新規作成しファイルに保存するまでの一連のデータ処理は、次のようになります。

Imgxw1_2_05

 PythonでxlwingsをつかいWorkbookを新規作成し『newworkbook』という名前のファイルに保存するロジックは、

 次のようになります。

 外部ライブラリxlwingsをインポート

 Bookクラスから作成したWorkbookオブジェクトを、『wb』に格納

 『wb』を『newworkbook』という名前のファイルに保存

 『wb』を閉じる

 これをPythonで、コーディングすると、

import xlwings

wb = xlwings.Book()

wb.save('newworkbook.xlsx')

wb.close()

 となります。


 このように、PythonでExcelワークブックを新規作成することができます。


 次回『xlwingsをつかい既存Workbookを読みこみファイル保存』では、

 xlwingsをつかいPythonでExcelワークブックを読みこみファイル保存してみます。