POI复制sheet页及其内容格式到别一个Excel文件中
时间: 2024-03-09 12:44:55 浏览: 102
你可以使用Python中的openpyxl模块来复制一个Excel文件中的sheet页及其内容格式到另一个Excel文件中。具体步骤如下:
1. 导入openpyxl模块和copy模块:
```python
import openpyxl
from openpyxl.utils import get_column_letter
from openpyxl.styles import Color, PatternFill, Font, Border
from copy import copy
```
2. 打开原始Excel文件和目标Excel文件,并获取需要复制的sheet页:
```python
# 打开原始Excel文件
wb_source = openpyxl.load_workbook('source.xlsx')
# 打开目标Excel文件
wb_dest = openpyxl.load_workbook('dest.xlsx')
# 获取需要复制的sheet页
ws_source = wb_source['Sheet1']
```
3. 创建一个新的sheet页并复制原始sheet页的内容和格式:
```python
# 创建一个新的sheet页
ws_dest = wb_dest.create_sheet('Sheet1')
# 复制原始sheet页的内容和格式
for row in ws_source.iter_rows():
for cell in row:
new_cell = ws_dest.cell(row=cell.row, column=cell.column, value=cell.value)
if cell.has_style:
new_cell.font = copy(cell.font)
new_cell.border = copy(cell.border)
new_cell.fill = copy(cell.fill)
new_cell.number_format = copy(cell.number_format)
new_cell.protection = copy(cell.protection)
new_cell.alignment = copy(cell.alignment)
```
4. 保存目标Excel文件:
```python
# 保存目标Excel文件
wb_dest.save('dest.xlsx')
```
这样,你就可以成功地将一个Excel文件中的sheet页及其内容格式复制到另一个Excel文件中了。注意,如果有多个sheet页需要复制,可以使用循环来实现。
阅读全文