python写入excel保持工作簿结构不变
时间: 2023-08-27 07:10:13 浏览: 97
要在Python中写入Excel并保持工作簿结构不变,你可以使用openpyxl库。下面是一个示例代码,演示如何实现这个目标:
```python
from openpyxl import load_workbook
# 打开现有的Excel文件
workbook = load_workbook('原始文件.xlsx')
# 创建一个新的工作表
new_sheet = workbook.create_sheet('新工作表')
# 在新工作表中写入数据
new_sheet['A1'] = 'Hello'
new_sheet['B1'] = 'World'
# 保存修改后的文件
workbook.save('新文件.xlsx')
```
这个示例代码打开名为"原始文件.xlsx"的Excel文件,并在其中创建一个名为"新工作表"的工作表。然后,将数据写入新工作表的单元格'A1'和'B1'。最后,将修改后的工作簿保存为"新文件.xlsx"。
这样做可以保持原始工作簿的结构不变,只是在其中添加了一个新的工作表,并向其中写入数据。
相关问题
python编写excel表格转为word格式不变的代码
你好,可以使用 python-docx 和 openpyxl 库来编写代码实现将 Excel 表格转为 Word 格式不变的功能,下面是代码示例:
```python
from docx import Document
from docx.enum.table import WD_TABLE_ALIGNMENT
from openpyxl import load_workbook
# 加载 Excel 工作簿
wb = load_workbook('example.xlsx')
sheet = wb.active
# 创建 Word 文档实例
doc = Document()
# 添加表格
table = doc.add_table(rows=sheet.max_row, cols=sheet.max_column)
table.alignment = WD_TABLE_ALIGNMENT.CENTER # 居中对齐
# 将 Excel 数据写入 Word 表格中
for i, row in enumerate(sheet.iter_rows(min_row=1, max_row=sheet.max_row)):
for j, cell in enumerate(row):
table.cell(i, j).text = str(cell.value)
# 保存 Word 文档
doc.save('example.docx')
```
希望对你有所帮助!
python 覆盖excel数据读取后重新写入到另一个excel中(保留公式)
在Python中,如果你想从一个Excel文件读取数据,对它进行处理后再写回同一个文件,但保持原有的公式不变,可以使用`openpyxl`库,因为它支持读写Excel 2010 xlsx/xlsm/xltx/xltm格式,并且能够保存公式。以下是一个基本步骤:
首先,导入必要的库:
```python
from openpyxl import load_workbook
from openpyxl.utils.dataframe import dataframe_to_rows
```
接着,加载工作簿:
```python
# 假设fname1是源文件名
wb = load_workbook(filename=fname1)
ws = wb.active # 或指定特定的工作表
```
处理数据(例如,你可以使用pandas DataFrame来操作数据):
```python
# 使用pandas读取数据
df = pd.read_excel(wb, sheet_name='企业')
# 对数据进行计算或其他操作
processed_data = df.some_processing()
# 或者直接修改原数据
df['新列'] = processed_data['新列']
```
最后,将处理后的数据写回到Excel文件中:
```python
# 将DataFrame转换为行,以便写入单元格
for r in dataframe_to_rows(processed_data, index=False, header=True):
ws.append(r)
# 保存更改
wb.save(filename=fname1)
```
注意,`openpyxl`默认不会保留公式,如果要保存公式,你需要在每次写入时显式地更新公式,这可能会比较复杂。如果你的数据中包含公式,建议在处理前复制公式,然后在写入时重新应用。
阅读全文