weiyideid823 发表于 2020-10-22 22:54:39

如何批量删除多个excel 中的指定sheet

各位大神好,小弟需要删掉如图多个excel 中某个指定名字的sheet,代码如下,运行的时候一直报错,求大神指点!

import openpyxl
import os

def sheet_delete(excel_path,sheet_name):
    wb = openpyxl.load_workbook(excel_path)

    ws = wb
    wb.remove(ws)

    wb.save(excel_path)

path = r'C:\remove sheet'
files = os.listdir(path)
sheet_name = 'Parameter'


for i in (1,100):
    excel_path = r'C:\remove sheet'
    sheet_delete(excel_path,sheet_name)

疾风怪盗 发表于 2020-10-22 23:46:47

这样试试
import openpyxl
import os


def sheet_delete(excel_path, sheet_name):
    wb = openpyxl.load_workbook(excel_path)
    if sheet_name in wb.sheetnames:
      ws = wb
      wb.remove(ws)
    wb.save(excel_path)


path = r'D:\python\test'
files = os.listdir(path)
sheet_name = 'Sheet2'

for i in files:
    if os.path.splitext(i) == '.xlsx':
      excel_path = path + os.sep + i
      print(excel_path)
      sheet_delete(excel_path, sheet_name)

weiyideid823 发表于 2020-10-22 23:52:11

疾风怪盗 发表于 2020-10-22 23:46
这样试试

感谢大神,奏效了!
麻烦再问下我的问题出在哪儿呢?

疾风怪盗 发表于 2020-10-23 01:21:11

weiyideid823 发表于 2020-10-22 23:52
感谢大神,奏效了!
麻烦再问下我的问题出在哪儿呢?

文件路径拼接不对,而且你找了文件夹下所有文件,但是也没用到

疾风怪盗 发表于 2020-10-23 01:42:35

weiyideid823 发表于 2020-10-22 23:52
感谢大神,奏效了!
麻烦再问下我的问题出在哪儿呢?

如果问题解决了,就设个最佳吧

weiyideid823 发表于 2020-10-23 09:31:29

疾风怪盗 发表于 2020-10-23 01:21
文件路径拼接不对,而且你找了文件夹下所有文件,但是也没用到

好的,感谢大神!
页: [1]
查看完整版本: 如何批量删除多个excel 中的指定sheet