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)

相关推荐
兵慌码乱4 小时前
面向桌面端的资产管理系统分层架构设计与核心模块实现
python·系统架构·sqlite·pyqt5·数据库设计·桌面应用开发·mvc架构
咖啡八杯5 小时前
GoF设计模式——策略模式
java·后端·spring·设计模式
hboot5 小时前
AI工程师第三课 - 机器学习基础
python·scikit-learn·kaggle
顾林海10 小时前
Agent入门阶段-编程基础-Python:流程控制
python·agent·ai编程
用户1285261160213 小时前
我把祖传Java项目重构后,接口响应从3s砍到了200ms,只改了这几行代码
java
Linsk13 小时前
组件 = 模板 + 业务逻辑
java·前端·vue.js
呱呱复呱呱13 小时前
Django CBV 源码解读:一个请求是怎么找到你的 get() 方法的
python·django
星沉远浦14 小时前
用Gemini高效解决Java代码报错难以定位的问题
java
用户2986985301417 小时前
Word 文档字符级格式化:Java 实现方案详解
java·后端
曲幽17 小时前
刚部署的 LibreTranslate 频频翻车?我掏出了 20 年前的 StarDict 词典,用 FastAPI 搭了个本地词典翻译 API
python·fastapi·web·translate·goldendict·libretranslate·stardict·pystardict