python,选择文件夹,将文件夹内excel文件中的全部sheet移动到一个新建实例中,并保存在桌面。excel中的sheet名称都不同,需要原封不动移动到新文件内。在反馈框中加入完成进度条
时间: 2023-05-15 20:07:56 浏览: 73
使用Python操作excel文件的实例代码
好的,这是一个比较复杂的任务,但是我会尽力回答。首先,您需要使用Python的os和openpyxl模块来处理文件和Excel表格。以下是一个可能的解决方案:
```python
import os
from openpyxl import load_workbook, Workbook
from tqdm import tqdm
# 选择文件夹
folder_path = input("请输入文件夹路径:")
# 创建新的Excel文件
new_workbook = Workbook()
new_sheet = new_workbook.active
# 遍历文件夹中的所有Excel文件
for filename in tqdm(os.listdir(folder_path)):
if filename.endswith(".xlsx"):
# 打开Excel文件
workbook = load_workbook(os.path.join(folder_path, filename))
# 遍历Excel文件中的所有sheet
for sheet_name in workbook.sheetnames:
# 将sheet复制到新的Excel文件中
sheet = workbook[sheet_name]
new_sheet = new_workbook.create_sheet(sheet_name)
for row in sheet.iter_rows():
for cell in row:
new_sheet[cell.coordinate].value = cell.value
# 保存新的Excel文件到桌面
desktop_path = os.path.join(os.path.expanduser("~"), "Desktop")
new_workbook.save(os.path.join(desktop_path, "merged.xlsx"))
# 显示完成进度条
print("任务完成!")
```
这段代码会遍历指定文件夹中的所有Excel文件,并将每个文件中的所有sheet复制到一个新的Excel文件中。新Excel文件将保存在桌面上,并命名为“merged.xlsx”。在代码中,我使用了tqdm模块来显示完成进度条。
阅读全文