Python 使用Win32Com 创建Excel对象直接操作Excel

import win32com.client

xl= win32com.client.Dispatch("Excel.Application")

wb=xl.Workbooks.open(r'C:\Users\ming12.liu\Desktop\Book1.xlsx')

sheet=wb.worksheets(1)

sheet.Protection.AllowEditRanges.Add("Ops", sheet.Columns("B"), "Ops")

sheet.Protect(Password:="F&C", DrawingObjects:=True, Contents:=True, Scenarios:=True)

wb.Save()

wb.Close()

xl.Application.Quit()

其中遇到一个问题,当sheet已经被保护了,再次执行代码时报错:

Traceback (most recent call last):

File "c:\Users\ming12.liu\Desktop\import win32com.py", line 8, in <module>

sheet.Protection.AllowEditRanges.Add("Ops", sheet.Columns("B:B"))

pywintypes.com_error: (-2147352567, '发生意外。', (0, None, None, None, 0, -2146827284), None)

相关推荐
zerozrc02 分钟前
Java 方法调用的底层原理
java·后端
星火102410 分钟前
【LangChain4j系列01】LangChain4j 快速入门与核心概念
java·人工智能
SemiTris16 分钟前
从Controller到Tomcat底层请求链路全解析
java·tomcat
月光有害19 分钟前
理解 Spring 依赖注入:从构造器注入到集合与条件 Bean
java·后端·spring
程序员雷欧21 分钟前
LongAdder
开发语言·python
码农进化录25 分钟前
Java 程序员的 AI 进化论 | 用 AI 生成 Spring Boot 脚手架,省下两小时重复劳动
java·spring boot·openai
月光船幽幽32 分钟前
分层阈值规避归藏协议过度重置
人工智能·python
名字还没想好☜35 分钟前
Java 用 MethodHandle 替代反射:调用性能实测、invokeExact 的坑与缓存
java·开发语言·缓存·反射·methodhandle
SMF191937 分钟前
【Linux】完美解决缩略图工具gm调用java.io.FileNotFoundException: gm问题
java·开发语言·python
㳺三才人子40 分钟前
初探 Data Analysis - Matplotlib
python·plotly·pandas·matplotlib