1. 解除 Excel 表格工作表爱护的办法
如下文档介绍了 Excel 表格解除工作表爱护的办法,根本的套路就是把 excel 表格改名一个压缩包文件,接着从压缩包文件中取出对应的 sheet 页面的配置 xml 文件,而后把该 xml 文件中的 sheetProtection 节点删除掉。最初把文件放入压缩包,并复原为原 excel 后缀。从新关上 excel 表格,该 sheet 页面的表格爱护已被解除。
https://www.jianshu.com/p/b01…
https://www.cnblogs.com/shadr…
2. 应用 python 疾速解除工作表爱护
如果 sheet 页面比拟多,一一去批改比拟麻烦,所以这里提供一个应用 python 脚本疾速批改的计划:
import os
import re
import xml.dom.minidom
def delete_protection_node(xml_file):
doc = xml.dom.minidom.parse(xml_file)
root = doc.documentElement
for parent in root.childNodes:
if(parent.tagName == 'sheetProtection'):
root.removeChild(parent)
with open(xml_file, 'w', encoding='UTF-8') as f:
doc.writexml(f)
walk_names = os.walk(r'xl\worksheets')
for (directory, sub_directorys, file_names) in walk_names:
for name in file_names:
m = re.match(r'(.+\.)xml$', name, re.I)
if m:
delete_protection_node(os.path.join(directory, name))