使用python,选择文件夹,将文件夹内所有工作簿内的所有工作表复制至一个新工作簿中,并保存至桌面
时间: 2023-05-15 18:07:04 浏览: 101
可以使用Python中的pandas和openpyxl库来实现这个功能。以下是代码示例:
```python
import os
import pandas as pd
from openpyxl import Workbook, load_workbook
# 选择文件夹
folder_path = input("请输入文件夹路径:")
# 遍历文件夹内所有工作簿
for file_name in os.listdir(folder_path):
file_path = os.path.join(folder_path, file_name)
if os.path.isfile(file_path) and file_name.endswith(".xlsx"):
# 读取工作簿中的所有工作表
wb = load_workbook(file_path)
sheets = wb.sheetnames
# 将所有工作表合并到一个新工作簿中
new_wb = Workbook()
for sheet_name in sheets:
sheet = wb[sheet_name]
df = pd.DataFrame(sheet.values)
new_wb.create_sheet(sheet_name)
new_sheet = new_wb[sheet_name]
for r in dataframe_to_rows(df, index=False, header=False):
new_sheet.append(r)
# 保存新工作簿至桌面
desktop_path = os.path.join(os.path.expanduser("~"), "Desktop")
new_file_path = os.path.join(desktop_path, file_name)
new_wb.save(new_file_path)
```
这段代码会遍历指定文件夹内所有后缀为.xlsx的工作簿,将每个工作簿中的所有工作表合并到一个新工作簿中,并保存至桌面。
阅读全文