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()
网友评论