Python 调用 openpyxl 库

修改内容

使用 openpyxl 库可以轻松地修改和删除 Excel 文件中的单元格内容,并将修改后的内容另存为新的文件。以下是一个示例代码,展示了如何实现这些功能:

示例代码

Python复制

import openpyxl

# 打开现有的 Excel 文件
workbook = openpyxl.load_workbook('example.xlsx')

# 获取工作表
sheet = workbook['Sheet1']

# 修改单元格内容
sheet['A1'] = 'New Value'  # 修改 A1 单元格的值

# 删除单元格内容
sheet['B1'].value = None  # 删除 B1 单元格的值

# 另存为新的文件
workbook.save('modified_example.xlsx')

详细说明

  • 打开文件:使用 openpyxl.load_workbook() 方法加载现有的 Excel 文件。
  • 选择工作表:通过工作表的名称(如 Sheet1)获取工作表对象。
  • 修改单元格:直接通过单元格坐标(如 'A1')赋值,即可修改单元格内容。
  • 删除单元格:将单元格的值设置为 None,可以清除单元格内容。
  • 另存为:使用 workbook.save() 方法将修改后的内容保存为新的 Excel 文件。

更多功能

如果你想对多个单元格进行批量修改或删除,可以使用循环来实现。例如:

Python复制

# 修改单元格区域 A1:A5 的内容
for row in range(1, 6):
    sheet[f'A{row}'] = f'Row {row}'

# 删除单元格区域 B1:B5 的内容
for row in range(1, 6):
    sheet[f'B{row}'].value = None

注意事项

  • 在修改或删除单元格内容之前,请确保你已经打开了正确的 Excel 文件和工作表。
  • 如果需要保留原始文件,建议将修改后的内容保存为新的文件(如 modified_example.xlsx)。
  • 如果需要对工作表进行更复杂的操作(如插入行、列等),可以参考 openpyxl 的官方文档。

希望以上内容对你有帮助!

修改字体

在使用 openpyxl 时,可以直接为单元格设置字体样式,包括英文字体和中文字体。以下是一个示例代码,展示如何设置英文字体为 Times New Roman,中文字体为楷体_GB2312:

Python复制

import openpyxl
from openpyxl.styles import Font

# 打开现有的 Excel 文件
workbook = openpyxl.load_workbook('example.xlsx')

# 获取工作表
sheet = workbook['Sheet1']

# 设置英文字体为 Times New Roman
cell_en = sheet['A1']
cell_en.value = 'Hello World'
cell_en.font = Font(name='Times New Roman', size=12)

# 设置中文字体为楷体_GB2312
cell_cn = sheet['B1']
cell_cn.value = '你好世界'
cell_cn.font = Font(name='楷体_GB2312', size=12)

# 保存工作簿
workbook.save('modified_example.xlsx')

详细说明

  • 字体设置
    • name='Times New Roman':设置英文字体为 Times New Roman。
    • name='楷体_GB2312':设置中文字体为楷体_GB2312。
    • size=12:设置字体大小为 12。
  • 注意事项
    • 请确保 Excel 安装了所需的字体(Times New Roman 和 楷体_GB2312)。
    • 如果需要为中英文混合的单元格设置字体,Excel 会根据字体设置自动处理中英文的显示。

示例代码运行结果

运行上述代码后:

  • A1 单元格的英文内容将使用 Times New Roman 字体。
  • B1 单元格的中文内容将使用楷体_GB2312 字体。

如果需要同时在同一个单元格中设置中英文的不同字体,可以将中英文分开到不同的单元格中,然后分别设置字体。

posted @ 2025-04-20 18:58  Yogile  阅读(115)  评论(0)    收藏  举报