合并两个Excel文件可以通过多种方法实现,以下是使用Python进行合并的几种常见方法:
方法一:使用`pandas`库
`pandas`是一个强大的数据处理库,可以方便地读取和合并Excel文件。
```python
import pandas as pd
读取两个Excel文件
df1 = pd.read_excel('file1.xlsx')
df2 = pd.read_excel('file2.xlsx')
合并两个数据框
df_merged = pd.concat([df1, df2], axis=0, ignore_index=True)
保存合并后的数据框到新的Excel文件
df_merged.to_excel('merged_file.xlsx', index=False)
方法二:使用`openpyxl`库`openpyxl`专门用于处理`.xlsx`文件,并且可以保留公式(如果数据只模式为`data_only=True`)。```pythonfrom openpyxl import load_workbook
加载两个Excel文件
wb1 = load_workbook('file1.xlsx', data_only=True)
wb2 = load_workbook('file2.xlsx', data_only=True)
获取工作簿中的所有工作表
ws1 = wb1.active
ws2 = wb2.active
创建一个新的工作簿
wb_merged = Workbook()
ws_merged = wb_merged.active
将第一个工作表的内容复制到新工作簿
for row in ws1.iter_rows(min_row=1, max_row=ws1.max_row, min_col=1, max_col=ws1.max_column, values_only=True):
ws_merged.append(row)
将第二个工作表的内容复制到新工作簿
for row in ws2.iter_rows(min_row=1, max_row=ws2.max_row, min_col=1, max_col=ws2.max_column, values_only=True):
ws_merged.append(row)
保存合并后的工作簿
wb_merged.save('merged_file.xlsx')
方法三:使用`xlrd`和`xlsxwriter`库
这种方法既可以处理`.xls`文件,也可以处理`.xlsx`文件。
```python
import xlrd
import xlsxwriter
打开两个Excel文件
workbook1 = xlrd.open_workbook('file1.xls')
workbook2 = xlrd.open_workbook('file2.xls')
创建一个新的Excel文件
workbook_merged = xlsxwriter.Workbook('merged_file.xlsx')
worksheet_merged = workbook_merged.add_worksheet()
将第一个文件的内容写入新的Excel文件
for row_idx in range(workbook1.nsheets):
worksheet = workbook1.sheet_by_index(row_idx)
for col_idx in range(worksheet.ncols):
worksheet_merged.write(row_idx, col_idx, worksheet.cell_value(row_idx, col_idx))
将第二个文件的内容写入新的Excel文件
for row_idx in range(workbook2.nsheets):
worksheet = workbook2.sheet_by_index(row_idx)
for col_idx in range(worksheet.ncols):
worksheet_merged.write(row_idx, col_idx, worksheet.cell_value(row_idx, col_idx))
关闭并保存新的Excel文件
workbook_merged.close()
以上方法都可以根据你的具体需求进行调整。请选择适合你情况的方法进行操作
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://sigusoft.com/bj/78743.html