最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python實現(xiàn)鎖定指定Excel單元格區(qū)域

 更新時間:2026年05月08日 14:00:02   作者:咕白m625  
本文將演示如何使用 Python 實現(xiàn) Excel 指定單元格區(qū)域鎖定,公式單元格隱藏保護,工作表密碼防護,多工作表批量鎖定與解除保護,所有代碼示例可直接復用至自動化業(yè)務(wù)腳本,感興趣的小伙伴可以了解下

前言

在報表自動化、業(yè)務(wù)數(shù)據(jù)防護、批量臺賬生成等后端開發(fā)場景中,經(jīng)常需要對 Excel 表頭、固定配置區(qū)域、公式計算單元格進行鎖定保護,防止人為誤編輯與數(shù)據(jù)篡改。

本文將演示如何使用 Python 實現(xiàn) Excel 指定單元格區(qū)域鎖定、公式單元格隱藏保護、工作表密碼防護、多工作表批量鎖定與解除保護,所有代碼示例可直接復用至自動化業(yè)務(wù)腳本。

一、環(huán)境配置

1. 免費庫安裝

pip install Spire.Xls.Free

2. 模塊導入

from spire.xls import *
from spire.xls.common import *

二、Excel 單元格鎖定核心原理

Excel 單元格鎖定并非單獨設(shè)置屬性即可生效,依賴一套固定邏輯機制:

  1. Excel 所有單元格默認 Locked 屬性為開啟狀態(tài),但未啟用工作表保護時,仍可自由編輯;
  2. 想要精準鎖定指定區(qū)域,需先全局解鎖整張工作表,再單獨對目標單元格設(shè)置鎖定;
  3. 配置完成后啟用工作表保護并設(shè)置訪問密碼,鎖定規(guī)則才會正式生效。

標準開發(fā)流程:

  1. 全局解鎖工作表全部單元格;
  2. 對需要保護的單元格、行、列或自定義區(qū)域開啟鎖定;
  3. 設(shè)置工作表保護密碼;
  4. 保存文件并主動釋放資源。

三、實戰(zhàn)代碼示例

下文所有示例統(tǒng)一使用保護密碼 Admin@2025,可根據(jù)業(yè)務(wù)場景自行替換。

示例1:鎖定指定單元格區(qū)域,保留其余區(qū)域可編輯

常用于鎖定報表表頭、固定參數(shù)列,開放業(yè)務(wù)數(shù)據(jù)行編輯權(quán)限。

from spire.xls import *
from spire.xls.common import *

# 加載Excel文件
workbook = Workbook()
workbook.LoadFromFile("demo.xlsx")
worksheet = workbook.Worksheets[0]

# 全局解鎖所有單元格(核心)
worksheet.Range.Style.Locked = False

# 鎖定指定區(qū)域(支持單元格、行列、區(qū)域)
# 示例1:鎖定單個單元格 A1
worksheet.Range["A1"].Style.Locked = True
# 示例2:鎖定區(qū)域 A1:C5
worksheet.Range["A1:C5"].Style.Locked = True
# 示例3:鎖定第1行(表頭)
worksheet.Rows[0].Style.Locked = True
# 示例4:鎖定A列(固定字段)
worksheet.Columns[0].Style.Locked = True

# 設(shè)置工作表密碼保護
worksheet.Protect("Admin@2025")

# 保存文件并釋放資源
workbook.SaveToFile("指定區(qū)域鎖定.xlsx", ExcelVersion.Version2016)
workbook.Dispose()

示例2:自動鎖定公式單元格并隱藏公式內(nèi)容

自動遍歷表格已使用區(qū)域,識別含公式的單元格,完成鎖定并隱藏公式,避免公式被篡改或隨意查看。

from spire.xls import *
from spire.xls.common import *

workbook = Workbook()
workbook.LoadFromFile("demo.xlsx")
worksheet = workbook.Worksheets[0]

# 全局解鎖
worksheet.Range.Style.Locked = False

# 遍歷已使用單元格
used_range = worksheet.AllocatedRange
for cell in used_range:
    if cell.HasFormula:
        cell.Style.Locked = True
        cell.HideFormula = True

# 啟用密碼保護
worksheet.Protect("Admin@2025")

workbook.SaveToFile("公式單元格鎖定.xlsx", ExcelVersion.Version2016)
workbook.Dispose()

示例3:批量鎖定工作簿所有工作表

批量對多工作表統(tǒng)一配置鎖定區(qū)域與保護密碼,適配多sheet 模板文件批量防護場景。

from spire.xls import *
from spire.xls.common import *

workbook = Workbook()
workbook.LoadFromFile("多工作表模板.xlsx")

# 遍歷所有工作表統(tǒng)一配置
for sheet in workbook.Worksheets:
    sheet.Range.Style.Locked = False
    sheet.Range["A1:C5"].Style.Locked = True
    sheet.Protect("Admin@2025")

workbook.SaveToFile("批量工作表鎖定.xlsx", ExcelVersion.Version2016)
workbook.Dispose()

示例4:解除工作表密碼保護

傳入原有保護密碼,撤銷工作表鎖定狀態(tài),恢復所有單元格可編輯。

from spire.xls import *
from spire.xls.common import *

workbook = Workbook()
workbook.LoadFromFile("指定區(qū)域鎖定.xlsx")
worksheet = workbook.Worksheets[0]

# 輸入原有密碼解除保護
worksheet.Unprotect("Admin@2025")

workbook.SaveToFile("解除工作表保護.xlsx", ExcelVersion.Version2016)
workbook.Dispose()

四、開發(fā)注意事項

  1. 單元格 Locked 屬性僅做標記,必須啟用工作表保護才會真正生效;
  2. 完成文件操作后務(wù)必調(diào)用 Dispose() 釋放資源,防止進程常駐占用文件;
  3. 優(yōu)先采用 xlsx 格式進行操作,老式 xls 格式在工作表保護特性上兼容性較弱;
  4. 程序運行環(huán)境無需安裝 Office 或 WPS,可直接部署在服務(wù)器后臺定時任務(wù)中;
  5. 解除工作表保護時,需傳入與設(shè)置保護時一致的密碼。

五、總結(jié)

本文結(jié)合實際開發(fā)場景,實現(xiàn)了 Excel 單元格指定區(qū)域鎖定、公式隱藏保護、多工作表批量處理、密碼保護與解鎖等常用功能。遵循全局解鎖、局部鎖定、密碼防護的標準邏輯,代碼結(jié)構(gòu)規(guī)范、可直接落地接入報表生成、數(shù)據(jù)導出、模板固化等自動化項目,適合作為 Python 操作 Excel 數(shù)據(jù)防護的通用解決方案。

到此這篇關(guān)于Python實現(xiàn)鎖定指定Excel單元格區(qū)域的文章就介紹到這了,更多相關(guān)Python鎖定Excel單元格內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python繪制牛奶凍曲線(高木曲線)案例

    Python繪制牛奶凍曲線(高木曲線)案例

    這篇文章主要介紹了Python繪制牛奶凍曲線(高木曲線)案例,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-08-08
  • Python中base64編碼與解碼詳解

    Python中base64編碼與解碼詳解

    本文主要介紹了Python2和Python3中使用base64加密方式的區(qū)別,Python3中字符為unicode編碼,而b64encode函數(shù)的參數(shù)為byte類型,所以需要先進行轉(zhuǎn)碼
    2024-11-11
  • Window10上Tensorflow的安裝(CPU和GPU版本)

    Window10上Tensorflow的安裝(CPU和GPU版本)

    這篇文章主要介紹了Window10上Tensorflow的安裝(CPU和GPU版本),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-12-12
  • django基于存儲在前端的token用戶認證解析

    django基于存儲在前端的token用戶認證解析

    這篇文章主要介紹了django基于存儲在前端的token用戶認證解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-08-08
  • Python檢測兩個文本文件相似性的三種方法

    Python檢測兩個文本文件相似性的三種方法

    檢測兩個文本文件的相似性是一個常見的任務(wù),可以用于文本去重、抄襲檢測等場景,Python 提供了多種方法來實現(xiàn)這一功能,x下面小編就來簡單介紹一下吧
    2025-03-03
  • python tkinter制作用戶登錄界面的簡單實現(xiàn)

    python tkinter制作用戶登錄界面的簡單實現(xiàn)

    這篇文章主要介紹了python tkinter制作用戶登錄界面的簡單實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-04-04
  • Python?find()、rfind()方法及作用

    Python?find()、rfind()方法及作用

    這篇文章主要介紹了Python?find()、rfind()方法,find方法的作用檢索是否指定的字符串,如果存在返回首次出現(xiàn)該字符串的索引,如果不存在返回-1,rfind 方法的作用和find方法作用相同,本文結(jié)合示例代碼給大家介紹的非常詳細,需要的朋友可以參考下
    2022-12-12
  • Python3打包exe代碼2種方法實例解析

    Python3打包exe代碼2種方法實例解析

    這篇文章主要介紹了Python3打包exe代碼2種方法實例解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-02-02
  • python的描述符(descriptor)、裝飾器(property)造成的一個無限遞歸問題分享

    python的描述符(descriptor)、裝飾器(property)造成的一個無限遞歸問題分享

    這篇文章主要介紹了python的描述符(descriptor)、裝飾器(property)造成的一個無限遞歸問題分享,一個不太會遇到的問題,需要的朋友可以參考下
    2014-07-07
  • 使用pandas的box_plot去除異常值

    使用pandas的box_plot去除異常值

    今天小編就為大家分享一篇使用pandas的box_plot去除異常值,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12

最新評論

陇南市| 永康市| 贞丰县| 天峨县| 双牌县| 保康县| 乌兰察布市| 柳州市| 淳化县| 靖远县| 田阳县| 大余县| 双流县| 宜州市| 新野县| 景德镇市| 兴国县| 扎鲁特旗| 琼中| 平顺县| 景宁| 富宁县| 田东县| 丰县| 夏津县| 龙里县| 罗源县| 正镶白旗| 阿克陶县| 东阿县| 随州市| 杂多县| 平邑县| 镇平县| 万载县| 开江县| 建水县| 两当县| 西城区| 新绛县| 道孚县|