用Python提取多个工作簿同名工作表的列数据并存储在新的工作表中
时间: 2024-04-16 07:27:28 浏览: 160
要提取多个工作簿中同名工作表的列数据并存储在新的工作表中,您可以使用pandas库和openpyxl库来完成。下面是一个示例代码:
```python
import pandas as pd
from openpyxl import Workbook
# 定义要读取的工作簿列表
workbooks = ['workbook1.xlsx', 'workbook2.xlsx', 'workbook3.xlsx']
# 定义要提取的同名工作表
sheet_name = 'Sheet1'
# 创建一个新的工作簿和工作表
combined_workbook = Workbook()
combined_sheet = combined_workbook.active
# 循环遍历每个工作簿并提取同名工作表的列数据
for workbook in workbooks:
# 读取工作簿中的数据
data = pd.read_excel(workbook, sheet_name=sheet_name)
# 提取需要的列数据
column_data = data['Column1'] # 替换'Column1'为您需要提取的列名称
# 将列数据写入新的工作表中
for row_index, value in enumerate(column_data, start=1):
combined_sheet.cell(row=row_index, column=1).value = value
# 保存新的工作簿
combined_workbook.save('combined_sheet.xlsx')
```
在上面的代码中,我们首先导入了pandas库和openpyxl库。然后,我们定义了要读取的工作簿列表 `workbooks` 和要提取的同名工作表 `sheet_name`,您可以根据实际情况进行修改。接下来,我们创建了一个新的工作簿和工作表 `combined_workbook` 和 `combined_sheet`。然后,我们使用一个循环遍历每个工作簿,并使用`pd.read_excel()`函数读取同名工作表的数据。然后,我们提取需要的列数据,并将其写入新的工作表中。最后,我们使用`save()`函数保存新的工作簿。
请确保在运行代码之前安装了pandas库和openpyxl库,您可以使用以下命令进行安装:
```
pip install pandas openpyxl
```
希望这可以帮助到您!