Excel表格数据修改小脚本

def main(x, z, d, c):
    Datei1 = fd.askopenfilename(
        title="选择要参照数据表格。xlsx",
        filetypes=[
            ("Excel files", "*.xls"),
            ("Excel files", ".xlsx"),
            ("Excel files", "*.xlsm"),
        ])  # 获取文件路径,通过中括号包含了三种excel文件格式

    test = pd.read_excel(Datei1, sheet_name=0)  # Pandas读取窗体界面的指定页
    data = test.set_index(x).to_dict()[z]
    # 建立数据库
    # print(data)
    # 第二个参数表示选择的Excel表格名
    # t=test.values
    # print("daying", test.set_index("物资名称").to_dict()["进价单价"])

    Datei2 = fd.askopenfilename(
        title="选择要修改的表格.xlsx(上月进销存)",
        filetypes=[
            ("Excel files", "*.xls"),
            ("Excel files", ".xlsx"),
            ("Excel files", "*.xlsm"),
        ])  # 获取文件路径,通过中括号包含了三种excel文件格式

    # # 引用openpyxl
    wb = openpyxl.load_workbook(Datei2)
    sheet = wb.sheetnames
    for biao in sheet:
        print(biao)
        sheet1 = wb[biao]
        for rowNum in range(2, sheet1.max_row + 1):  # 从第2行到最大值的行加一
            produceName = sheet1.cell(row=rowNum,
                                      column=d).value
            # row 是行,column是物资名称所在的列
            if produceName in data:  # 期初数据库
                sheet1.cell(row=rowNum, column=c).value = data[produceName]
        # 对应期初数据单元格的值为期初数据库对应值
    # shuzi=sheet.cell(row=rowNum, column=9).value
    # print(type(shuzi))#

    wb.save(Datei2)

    print("修改完成")

功能:实现数据的批量修改;

缺点:只能在windows系统下使用,只能识别后缀为.xlsx的表格。

注意:修改文件之前要留有副本!!!

     运行脚本的之前最好要关闭所有的表格!!

     脚本会修改所有工作表的对应内容!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值