xlwings(App.books.open/Book方式打開文件)
一、總結
一句話總結:
在多次處理文件中,App.books.open方式打開可以控制在一個excel窗口,Book方式則會打開多個窗口。
1、xlwings.App(visible=True,add_book=False) 這句話的意思?
其中參數visible(表示處理過程是否可視,也就是處理Excel的過程會不會顯示出來),add_book(是否打開新的Excel程序,也就是是不是打開一個新的excel窗口)
二、xlwings(App.books.open/Book方式打開文件)
轉自或參考:xlwings(App.books.open/Book方式打開文件)
https://blog.csdn.net/wang_zuel/article/details/94045535
import xlwings as xw
import time
app = xw.App(visible=True,add_book=False)
xlwings.App(visible=True,add_book=False)
其中參數visible(表示處理過程是否可視,也就是處理Excel的過程會不會顯示出來),add_book(是否打開新的Excel程序,也就是是不是打開一個新的excel窗口)
創建新Excel文件
ex = app.books.add()
ex.save('./ex.xlsx')
#ex.close()
time.sleep(3)
ex2 = app.books.add()
ex2.save('./ex2.xlsx')
#ex2.close()
time.sleep(3)
app.books[0].close() //關閉app中第一個文件(ex.xlsx)
app.quit() //關閉整個excel窗口
打開Excel文件
在論壇里簡單看了下xlwings的使用方法,一開始對使用App.books.open打開excel文件和用Book方法打開的區別不是很清楚,於是做了下面的嘗試:
App.books.open方式打開
abc = ['A','B','C']
for ii in abc:
app = xw.App(visible=True,add_book=False)
example = app.books.open('./xlwings/ex.xlsx')
sheet = example.sheets[0]
for jj in range(1,10):
loc = ii+str(jj)
sheet.range(loc).value = jj
example.save()
example.close()
time.sleep(2)
app.quit()
Book方式打開
abc = ['A','B','C']
for ii in abc:
example2 = xw.Book('./xlwings/ex2.xlsx')
sheet2 = example2.sheets[0]
for jj in range(1,10):
loc = ii+str(jj)
sheet2.range(loc).value = jj
example2.save()
example2.close()
在使用Book方式打開的過程中,發現循環三次,程序會打開三個Excel窗口:
那么也就是說,在多次處理文件中,App.books.open方式打開可以控制在一個excel窗口,Book方式則會打開多個窗口。