Xlwings使用心得(一)

1. 返回一個table的最右下角單元格

返回單元格:cell_index=wb.sheets[0].rang(A1:B23).last_cell

返回列數:row_index=wb.sheets[0].rang(A1:B23).last_cell.row

返回行數:column_index=wb.sheets[0].range(A1:B23).last_cell.column

2. 實現跨excel工作簿的工作表複製

#提取出待粘貼的信息

data=wb_history.sheets["歷史信息"].range("A1:CQ100").value

#粘貼進新的工作表

wb.sheets[0].range("A1").options(expand="table").value=data

知識拓展:range("a1").options(transpose=True).value=[1,2,3,4]  將1,2,3,4分別放入a1,a2,a3,a4

                range("A1").options(expand="table").value=[1,2,3,4] 將1,2,3,4分別放入a1,a2,b1,b2

3. 利用xlwings實現兩個excel自動覈對差異

1 import xlwings as xw

  2 app=xw.App(visible=True,add_book=False)

  3 wb=app.books.open(r"c:\users\dell\desktop\01.xlsx")

  4 wb_history=app.books.open(r"c:\users\dell\desktop\歷史信息.xlsx")

  5 f=open(r"c:\users\dell\desktop\01.txt","w")

  6 data1=wb_history.sheets["歷史信息"].range("A1:CQ100").value

  7 data2=wb.sheets[0].range("A1:CQ100").value

  8 for i in range(0,len(data2)):

  9    if data2[i]!=data1[i]:

10        for a in range(0,len(data2[i])):

11            if data2[i][a]!=data1[i][a]:

12                print("%d行%d列的數據不一致:在歷史信息.xlsx中的信息爲%s,在01.xlsx中的信息爲%s"%(i+1,a+1,data1[i][a],    data2[i][a]),file=f)

13 wb.save()

14 wb.close()

15 wb_history.close()

16 app.quit()

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章