Foxtable(狐表)用户栏目专家坐堂 → 能不能利用代码给WORD报表加一个文档保护密码?


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

主题:能不能利用代码给WORD报表加一个文档保护密码?

帅哥哟,离线,有人找我吗?
wusim
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:391 积分:3179 威望:0 精华:0 注册:2008/8/31 20:44:00
能不能利用代码给WORD报表加一个文档保护密码?  发帖心情 Post By:2015/2/24 16:52:00 [只看该作者]

能不能利用代码给WORD报表加一个文档保护密码?防止打开WORD报表后修改文档。

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/2/24 16:57:00 [只看该作者]

 可以,参考

 

 

Dim app As New MSWord.Application
try
    Dim fileName = "d:\test.doc"
    Dim doc = app.Documents.Open(fileName)
    doc.Protect (Password:="123456", NoReset:=False, Type:= _
        MsWord.WdProtectionType.wdAllowOnlyReading, UseIRM:=False, EnforceStyleLock:=False)
    app.Documents.save
catch ex As exception
    msgbox(ex.message)
finally
    app.Quit
End try


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


加好友 发短信
等级:小狐 帖子:391 积分:3179 威望:0 精华:0 注册:2008/8/31 20:44:00
  发帖心情 Post By:2015/2/24 22:11:00 [只看该作者]

请问哪里出问题:我想生成WORD报表后加密码后再显示报表。如果第二记录再生成WORD报表时,由于已加密码不能再生成,请问怎样处理好?是先删除已加密文件,再粘贴一个没有加密密码的文件还是先解除保护后再生成好?
Dim tm As String  = ProjectPath & "E:\360云盘\狐表程序\wsm\管理项目1\Attachments\A.doc" '指定模板文件
Dim fl As String = ProjectPath & "E:\360云盘\狐表程序\wsm\管理项目1\Reports\A.doc" '指定目标文件
Dim wrt As New WordReport(Tables("表A"),tm,fl) '定义一个WordReport
wrt.Build() '生成报表
Dim app As New MSWord.Application
try
    Dim fileName = "E:\360云盘\狐表程序\wsm\管理项目1\Reports\A.doc"
    Dim doc = app.Documents.Open(fileName)
    doc.Protect (Password:="123456", NoReset:=False, Type:= _
        MsWord.WdProtectionType.wdAllowOnlyReading, UseIRM:=False, EnforceStyleLock:=False)
    app.Documents.save
catch ex As exception
    msgbox(ex.message)
finally
    app.Quit
wrt.Show() '显示报表
End try

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/2/24 22:22:00 [只看该作者]

Dim tm As String  = ProjectPath & "Attachments\A.doc" '指定模板文件
Dim fl As String = ProjectPath & "Reports\A.doc" '指定目标文件
Dim wrt As New WordReport(Tables("表A"),tm,fl) '定义一个WordReport
wrt.Build() '生成报表
wrt.quit
Dim app As New MSWord.Application
try
    Dim fileName = fl
    Dim doc = app.Documents.Open(fileName)
    doc.Protect (Password:="123456", NoReset:=False, Type:= _
    MsWord.WdProtectionType.wdAllowOnlyReading, UseIRM:=False, EnforceStyleLock:=False)
    app.Documents.save
    app.Visible = True
catch ex As exception
    msgbox(ex.message)
finally
    'app.Quit
End try

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


加好友 发短信
等级:小狐 帖子:391 积分:3179 威望:0 精华:0 注册:2008/8/31 20:44:00
  发帖心情 Post By:2015/2/24 22:50:00 [只看该作者]

有一问题生成时显示收下窗口,还有加密码后文件打印后不保存直接退出,怎样改代码?

图片点击可在新窗口打开查看此主题相关图片如下:152.jpg
图片点击可在新窗口打开查看

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/2/24 22:59:00 [只看该作者]

 1、调出任务管理器,去掉winword进程;或者重启你的计算机

 

 2、完成1,代码本来就不会提示保存的。


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


加好友 发短信
等级:小狐 帖子:391 积分:3179 威望:0 精华:0 注册:2008/8/31 20:44:00
  发帖心情 Post By:2015/2/25 17:13:00 [只看该作者]

问题还没有解决,还是弹出提示。还有打开已加密码的WORD报表,怎样才能原有WORD菜单,现在不见了。

图片点击可在新窗口打开查看此主题相关图片如下:1.jpg
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:2.jpg
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:3.jpg
图片点击可在新窗口打开查看

[此贴子已经被作者于2015/2/25 17:15:11编辑过]

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


加好友 发短信
等级:小狐 帖子:391 积分:3179 威望:0 精华:0 注册:2008/8/31 20:44:00
  发帖心情 Post By:2015/2/25 17:13:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:4.jpg
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:5.jpg
图片点击可在新窗口打开查看
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目2.rar



 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/2/25 17:22:00 [只看该作者]

 呃,测试了一下,项目正常。

 

 不正常,是因为你之前弄错了,没有关闭winword进程


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


加好友 发短信
等级:小狐 帖子:391 积分:3179 威望:0 精华:0 注册:2008/8/31 20:44:00
  发帖心情 Post By:2015/2/25 17:31:00 [只看该作者]

WORD报表打开后不见了原有的WORD系统菜单。

 回到顶部
总数 25 1 2 3 下一页