美文网首页工具癖
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