当前位置: 首页 > news >正文

用Python代码锁定Excel单元格以及行和列

Excel能够帮助用户高效地组织数据,还支持复杂的公式计算和数据分析。而随着团队协作的日益频繁,保护数据的准确性和完整性变得尤为重要。在Excel表格中,我们可以通过锁定特定的单元格或区域,防止对单元格内容进行随意修改,确保关键数据、公式或格式不被误改,从而维护表格的一致与可靠。本文将介绍如何使用Python代码来实现对Excel单元格的锁定,实现批量操作以及自动化。

文章目录

    • 用Python锁定Excel工作表中的指定单元格
    • 用Python锁定Excel工作表中的指定列

本文所使用的方法基于Spire.XLS for Python,PyPI:pip install Spire.XLS

用Python锁定Excel工作表中的指定单元格

我们可以通过将 Worksheet.Range[].Style.Locked 属性设置 True 来实现对指定单元格范围进行锁定的操作。
注意:Excel工作表中的所有单元在默认情况下都是锁定状态,但单元格锁定在Excel文件本身没有设置密码时不会生效。所以我们在锁定指定单元格时,需要先解锁所有单元格,然后再锁定指定单元格并为文件设置密码。
以下是操作步骤:
导入所需模块。

  1. 创建 Workbook 实例,并使用 Workbook.LoadFromFile() 方法加载Excel文件。
  2. 使用 Workbook.Worksheets.get_Item() 方法获取第一个工作表。
  3. 通过将 Worksheet.Range.Style.Locked 属性设置为 False,解除对工作表所用范围内所有单元格的锁定。
  4. 将指定单元格 Worksheet.Range[].Style.Locked 属性设置为 “True ”从而进行锁定。
  5. 使用 XlsWorksheetBase.Protect() 方法保护工作表。
  6. 使用 Workbook.SaveToFile() 方法保存结果文件。

代码示例

from spire.xls import *
from spire.xls.common import *# 创建一个Workbook实例并加载示例文件
workbook = Workbook()
workbook.LoadFromFile("示例.xlsx")# 获取第一个工作表
sheet = workbook.Worksheets.get_Item(0)# 解锁工作表中使用范围内的所有单元格
sheet.Range.Style.Locked = False# 锁定工作表中的特定单元格
sheet.Range["A2"].Style.Locked = True# 锁定工作表中的特定单元格范围
sheet.Range["F3:H4"].Style.Locked = True# 使用密码保护工作表
sheet.Protect("123456", SheetProtectionType.All)# 保存结果文件
workbook.SaveToFile("output/锁定Excel单元格.xlsx", ExcelVersion.Version2013)
workbook.Dispose()

结果
Python锁定Excel单元格

用Python锁定Excel工作表中的指定列

如果需要对指定列或行进行锁定,也可以使用相似的方法,将 Worksheet.Columns[].Style.LockedWorksheet.Rows[].Style.Locked 属性设置为 True
以下是操作步骤:

  1. 创建 Workbook 实例,并使用 Workbook.LoadFromFile() 方法加载Excel文件。
  2. 使用 Workbook.Worksheets.get_Item() 方法获取第一个工作表。
  3. 通过将 Worksheet.Range.Style.Locked 属性设置为 False,解除对工作表所用范围内所有单元格的锁定。
  4. 将指定列或行 Worksheet.Columns[].Style.LockedWorksheet.Rows[].Style.Locked 属性设置为 “True ”从而进行锁定。
  5. 使用 XlsWorksheetBase.Protect() 方法保护工作表。
  6. 使用 Workbook.SaveToFile() 方法保存结果文件。

代码示例

from spire.xls import *
from spire.xls.common import *# 创建一个Workbook实例并加载示例文件
workbook = Workbook()
workbook.LoadFromFile("示例.xlsx")# 获取第一个工作表
sheet = workbook.Worksheets.get_Item(0)# 解锁工作表中使用范围内的所有单元格
sheet.Range.Style.Locked = False# 锁定工作表中的第一列
sheet.Columns[0].Style.Locked = True# 锁定工作表中的第二行
sheet.Rows[1].Style.Locked = True# 使用密码保护工作表
sheet.Protect("123456", SheetProtectionType.All)# 保存结果文件
workbook.SaveToFile("output/锁定Excel行和列.xlsx", ExcelVersion.Version2013)
workbook.Dispose()

本文介绍了如何使用Python代码实现锁定Excel工作表中的指定单元格,包括锁定单元格范围、锁定行以及锁定列。

更多Excel文件操作技巧请前往Spire.XLS for Python教程查看。

申请免费License

http://www.lryc.cn/news/371730.html

相关文章:

  • 在Lua解释器中注册自定义函数库
  • UKP3D用户定制图框的思路
  • 事务并发问题 与 事务隔离级别
  • 云原生Kubernetes系列项目实战-k8s集群+高可用负载均衡层+防火墙
  • MFC为什么说文档在数据的保存和给用户提供数据之间划分了清晰的界限?
  • SAS:PROC SQL和ANSI标准
  • 使用mysql_config_editor可以为特定的MySQL服务器或客户端程序设置登录路径
  • gridview的模板按钮如何判断用户点击的是哪一行
  • 虚拟化 之三 详解 jailhouse(ARM 平台)的构建过程、配置及使用
  • 数据安全:Web3时代的隐私保护新标准
  • STM32串口不定长接收空闲中断
  • Ubuntu 设置开机启动脚本
  • C# Task 包含 await ConfigureAwait CancellationTokenSource
  • Python数据分析与建模库-02科学计算库Numpy01-05合集
  • 【前端项目笔记】1 登录与登出功能实现
  • 是字符串定义以及在C语言中字符串是如何表示的
  • 辽宁普通测径仪升级智能测径仪后都有哪些改进?
  • 【微信小程序】事件分类以及阻止事件冒泡
  • 踩坑!被node-sass折磨的一天
  • App UI 风格打造独特体验
  • 【学习笔记8】阅读StyleID论文源码
  • wordpress旅游网站模板
  • vs2019 c++20规范 STL 库中头文件 <atomic> 源码注释及探讨几个知识点
  • Flink任务如何跑起来之 2.算子 StreamOperator
  • 学习笔记——路由网络基础——路由优先级(preference)
  • 数据预处理——调整方差、标准化、归一化(Matlab、python)
  • opencv_特征检测和描述
  • CID引流电商下的3C产品选品策略深度解析
  • DeepSORT(目标跟踪算法)中的状态向量与状态转移矩阵
  • 李宏毅深度学习01——基本概念简介