Python 替换excel 单元格内容

news/2025/1/18 11:07:28/

要在Python中替换Excel单元格的内容,你可以使用openpyxl库。openpyxl是一个用于读写Excel 2010 xlsx/xlsm/xltx/xltm文件的库。

  1. 安装openpyxl
    首先,你需要安装openpyxl库。如果还没有安装,可以使用pip进行安装:
pip install openpyxl
  1. 编写脚本
    以下是一个完整的Python脚本示例,用于替换Excel文件中指定单元格的内容:
import openpyxldef replace_cell_content(file_path, sheet_name, cell_address, new_value):# 加载Excel工作簿workbook = openpyxl.load_workbook(file_path)# 选择工作表sheet = workbook[sheet_name]# 替换指定单元格的内容sheet[cell_address].value = new_value# 保存工作簿workbook.save(file_path)print(f"单元格 {cell_address} 的内容已替换为 {new_value}")if __name__ == "__main__":# Excel文件路径file_path = 'example.xlsx'# 工作表名称sheet_name = 'Sheet1'# 要替换的单元格地址cell_address = 'A1'# 新的单元格内容new_value = '新内容'# 替换单元格内容replace_cell_content(file_path, sheet_name, cell_address, new_value)
  1. 运行脚本
    将上述脚本保存为一个Python文件(例如replace_excel_cell.py),然后在命令行中运行:
python replace_excel_cell.py
  1. 注意事项
    文件路径:确保file_path指向正确的Excel文件路径。
    工作表名称:确保sheet_name与Excel文件中的工作表名称一致。
    单元格地址:cell_address应为有效的单元格地址,例如A1、B2等。
    保存文件:workbook.save(file_path)会覆盖原始文件。如果你不想覆盖原始文件,可以保存为一个新文件:
new_file_path = 'new_example.xlsx'
workbook.save(new_file_path)
  1. 扩展功能
    你可以根据需要扩展脚本的功能,例如:

批量替换:遍历多个单元格并进行替换。

条件替换:根据条件替换单元格内容。

读取单元格内容:在替换之前读取单元格的当前内容。

  1. 批量替换多个单元格的内容:
import openpyxldef batch_replace_cell_content(file_path, sheet_name, cell_addresses, new_values):# 加载Excel工作簿workbook = openpyxl.load_workbook(file_path)# 选择工作表sheet = workbook[sheet_name]# 批量替换单元格内容for cell_address, new_value in zip(cell_addresses, new_values):sheet[cell_address].value = new_valueprint(f"单元格 {cell_address} 的内容已替换为 {new_value}")# 保存工作簿workbook.save(file_path)if __name__ == "__main__":# Excel文件路径file_path = 'example.xlsx'# 工作表名称sheet_name = 'Sheet1'# 要替换的单元格地址列表cell_addresses = ['A1', 'B2', 'C3']# 新的单元格内容列表new_values = ['新内容1', '新内容2', '新内容3']# 批量替换单元格内容batch_replace_cell_content(file_path, sheet_name, cell_addresses, new_values)

http://www.ppmy.cn/news/1563861.html

相关文章

RV1126+FFMPEG推流项目(3)VI模块视频编码流程

视频编码的流程: 本章节讲的是RV1126视频编码的流程,在整个项目之中视频编码功能是核心之一。视频编码流程主要分三步:VI的初始化、VENC的初始化(硬件编码)、绑定VI和VENC节点、开启VENC线程进行视频编码的采集,注意一下这里的…

react中,使用antd的Upload组件上传zip压缩包文件

需求 使用antd的Upload上传.zip压缩包文件 代码 const [uploadLoaing, setUploadLoaing] useState(false);// 辅助函数:检查文件是否为zip格式function isZipFile(file: File): boolean {const fileType file.type;return fileType application/zip || file.n…

Checkbox 多选框的使用

基础用法 在el-checkbox元素中定义v-model绑定变量,单一的checkbox中,默认绑定变量的值会是Boolean,选中为true 禁用状态 设置disabled属性即可。 多选框组 checkbox-group元素能把多个 checkbox 管理为一组,只需要在 Group …

前端下载图片

可直接看第3条 1、a链接形式(不推荐) 这种方式可以下载文件,对于图片类,浏览器会直接打开 export function downloadFile(src: string, fileName: string) {const ele document.createElement(a);ele.setAttribute(href, src)…

Keil使用STLink下载烧录闪退解决(使用STLink烧录)

一:问题出现 在使用新版本keil开发STM32的的时候在选择STLink下载,在下载的的时候会进行闪退,点击load会直接退出keil,经过检查发现是STLink驱动出了问题,只需要重新安装驱动即可,具体解决方案如下。 二&am…

Android BitmapShader更简易的实现刮刮乐功能,Kotlin

Android BitmapShader更简易的实现刮刮乐功能,Kotlin 比这种方式 Android使用PorterDuffXfermode模式PorterDuff.Mode.SRC_OUT橡皮擦实现“刮刮乐”效果,Kotlin(2)-CSDN博客 更简单实现刮刮乐效果。 import android.content.Cont…

01、flink的原理和安装部署

flink中主要有两个进程,分别是JobMManager和TaskManager,当然了根据flink的部署和运行环境不同,会有一些不同,但是主要的功能是类似的,下面我会讲下聊下,公司用的多的部署方式,基于yarn集群的部…

HarmonyOS NEXT开发进阶(六):HarmonyOS NEXT实现嵌套 H5 及双向通信

文章目录 一、前言二、鸿蒙应用加载Web页面2.1 加载网络地址页面2.2 加载本地H5页面 三、实现Web组件 H5 层与鸿蒙应用层进行相互通讯3.1 鸿蒙应用向 H5 页面发送数据3.2 H5页面向鸿蒙应用发送数据 四、拓展阅读 一、前言 随着HarmonyOS NEXT的快速发展,越来越多的…