美文网首页工具癖
Xlwings使用心得(一)

Xlwings使用心得(一)

作者: yyddpp11 | 来源:发表于2019-04-23 13:51 被阅读19次

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()

相关文章

网友评论

    本文标题:Xlwings使用心得(一)

    本文链接:https://www.haomeiwen.com/subject/srdvgqtx.html