Foxtable(狐表)用户栏目专家坐堂 → word、excel文件有没有代码直接设定打开文档或编辑文档的时候进行密码确认呢?


  共有2722人关注过本帖树形打印复制链接

主题:word、excel文件有没有代码直接设定打开文档或编辑文档的时候进行密码确认呢?

帅哥哟,离线,有人找我吗?
李孝春
  11楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2472 积分:17346 威望:0 精华:0 注册:2013/1/31 0:03:00
回复:(有点蓝)https://docs.microsoft.com/zh-cn/p...  发帖心情 Post By:2021/1/15 17:35:00 [只看该作者]

谢谢   通过学习
如下代码已经能够实现设置密码的预期效果
Dim app As new Microsoft.Office.Interop.PowerPoint.Application
Dim ppt = app.Presentations.Open("C:\Users\Administrator\Desktop\瓮检普法模板.pptx",0,0,0)
ppt.Password = "123"
ppt.saved = True
App.Visible = True
app.quit

那么如果该文件预设了密码  怎么在代码中直接写入密码  然后不需要再次输入密码即可打开该PPT呢?

 回到顶部
帅哥哟,离线,有人找我吗?
李孝春
  12楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2472 积分:17346 威望:0 精华:0 注册:2013/1/31 0:03:00
回复:(有点蓝)测试没有问题,执行后打开文档就无法...  发帖心情 Post By:2021/1/15 17:50:00 [只看该作者]

Dim App As New MSExcel.Application
Dim Wb As MSExcel.Workbook = App.WorkBooks.Open("C:\Users\Administrator\Desktop\1.xls")
For Each ws As object In Wb.workSheets
    Ws.unProtect(Password:="hhh")  '以密码保护
    Wb.Save
Next
App.Quit
上述代码在运行时,将整个表格进行密码取消  

如果是单独一个工作表的模式  运行之后该工作表可以不再输入密码后直接编辑
Dim App As New MSExcel.Application
Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open("C:\Users\Administrator\Desktop\1.xls")
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets("Sheet1")
Ws.unProtect(Password:="hhh")  '以密码保护
Wb.Save
App.Quit

运行会报错

此主题相关图片如下:001.png
按此在新窗口浏览图片

word文件加密后  怎么修改红色部分进行解密呢?
Dim app As New MSWord.Application
Dim doc = app.Documents.Open("C:\Users\Administrator\Desktop\2.doc")
doc.unprotect(Password:="123456")
'doc.Protect (Password:="123456", NoReset:=False, Type:=MsWord.WdProtectionType.wdAllowOnlyReading, UseIRM:=False, EnforceStyleLock:=False)
Doc.saved = True
App.Visible = True

[此贴子已经被作者于2021/1/15 17:56:59编辑过]

 回到顶部
总数 12 上一页 1 2