#ライブラリ設定
import os
import xlwings as xw
#デスクトップのpathを得る
#対象EXCELファイルはデスクトップ上と既定したいためdesktop_dir_origin = os.path.expanduser('~/Desktop')
desktop_dir = desktop_dir_origin.replace("\\","/")
#print(desktop_dir)
#対象のワークブックファイルを追記モードで開けるかチェックする関数
def xlsx_is_open(filepath: str) -> bool:
try:
f = open(filepath, 'a')
f.close()
except:
return True
else:
return False
#対象ファイル名の設定
name_excel_target = "test.xlsx"
#対象ファイルのフルpath設定(ファイルはDesktop上と既定)
path_excel_target = desktop_dir + "/" + name_excel_target
#対象EXCELファイルが開いていたら強制保存し、EXCELを強制終了する
if xlsx_is_open(path_excel_target):
print(name_excel_target," がすでに開かれています。")
#開いているブックに接続
wb = xw.books.active
#開いているブックを上書き保存し、閉じる
wb.save()
wb.close()
print("開かれていたブックを上書き保存し、閉じました")
#EXCEL強制終了
xw.apps.cleanup()
print("EXCEL を強制終了しました。")
else:
print(name_excel_target,' はアクセス可能です。')