用Python提取一个文件夹中所有工作簿中工作表的列数据,并存储在一个新的工作簿中
时间: 2024-05-10 10:17:04 浏览: 103
不同工作簿之间工作表内容的拷贝
4星 · 用户满意度95%
可以使用Python中的`openpyxl`库来实现这个功能。以下是一个示例代码,可以提取指定文件夹中所有工作簿中的所有工作表的列数据,并将它们存储在一个新的工作簿中:
```python
import os
from openpyxl import load_workbook
from openpyxl import Workbook
# 指定要读取的文件夹路径
folder_path = "C:/Users/User/Documents/Excel Files"
# 创建一个新的工作簿
new_workbook = Workbook()
new_sheet = new_workbook.active
# 遍历文件夹中的所有文件
for filename in os.listdir(folder_path):
# 仅处理.xlsx文件
if filename.endswith(".xlsx"):
filepath = os.path.join(folder_path, filename)
# 读取工作簿
workbook = load_workbook(filepath)
# 遍历工作簿中的所有工作表
for sheetname in workbook.sheetnames:
worksheet = workbook[sheetname]
# 遍历工作表中的所有列
for col in worksheet.iter_cols():
col_data = []
# 遍历列中的所有单元格
for cell in col:
col_data.append(cell.value)
# 将列数据添加到新工作簿中
new_sheet.append(col_data)
# 保存新工作簿
new_workbook.save("C:/Users/User/Documents/Excel Files/new_workbook.xlsx")
```
在这个示例代码中,我们首先指定要读取的文件夹路径。然后,我们创建一个新的工作簿,并遍历文件夹中的所有.xlsx文件。对于每个工作簿,我们遍历其中的所有工作表和列,并将列数据添加到新工作簿中。最后,我们保存新工作簿。
阅读全文