Home » Python » xlwingsの使い方 » v0.30.5以降のxlwingxならApps.cleanup()でExcelのプロセスを強制終了できる

v0.30.5以降のxlwingxならApps.cleanup()でExcelのプロセスを強制終了できる

動作検証バージョン:Windows 11 Home + Python 3.10.6(64-bit) + xlwings 0.30.9 + 64bit Excel(バージョン2307 ビルド16610.20000 クイック実行)

何らかのプログラミング的方法でExcel作業を自動化すると、Excelのプロセスが残るという問題が発生することがあります。

この残ってしまったExcelのプロセスを強制終了くれるメソッドが、最近のxlwingsでは実装されています。

[スポンサードリンク]

Apps.cleanup()で残ったプロセスを強制終了できる

Appsコレクションのcleanup()メソッドを使うと、残ったプロセスを強制終了できるのです。

拙著『VBAユーザーのためのPython超入門』で多用しているIDLEのShellウィンドウで確認するなら、以下のとおりです。

>>> import xlwings as xw
>>> xw.apps.cleanup()

xlwingsのapps属性でAppsコレクションを取得して、Apps.cleanup()メソッドを実行しています。

v0.30.5 (Apr 25, 2023)以降がおすすめ

Apps.cleanup()が実装されたのは、v0.30.2 (Mar 16, 2023)からですが、私の環境では、例外「UnicodeDecodeError: 'utf-8' codec can't decode byte 0xcf in position 4: invalid continuation byte」が発生してしまいました。

v0.30.5 (Apr 25, 2023)以降なら、この例外も発生せず、残ってしまったプロセスを強制終了できます。

最終更新日時:2023-06-21 01:33

[スポンサードリンク]

Home » Python » xlwingsの使い方 » v0.30.5以降のxlwingxならApps.cleanup()でExcelのプロセスを強制終了できる

「xlwingsの使い方」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.