Board logo

标题: [问题求助] VBS如何设置Excel宏安全等级? [打印本页]

作者: lcg823    时间: 2012-9-24 08:13     标题: VBS如何设置Excel宏安全等级?

请问vbs 怎么设置Excel宏安全等级?
或者有其他方法也行?大家说说吧
作者: 乱码    时间: 2012-9-24 08:51

  1. Set oExcel = CreateObject("Excel.Application")
  2. strRegKey = "HKCU\Software\Microsoft\Office\"&oExcel.Version&"\Excel\Security\AccessVBOM"
  3. CreateObject("wscript.Shell").RegWrite strRegKey, 1, "REG_DWORD"
复制代码

作者: lcg823    时间: 2012-9-24 13:40

本帖最后由 lcg823 于 2012-9-24 13:41 编辑

回复 2# 乱码
我的是win7、office2007,运行你的vbs 后 ,打开带宏的excle表格还是显示“安全警告  宏已被禁用。”
是不是操作系统、Office版本 不同,这个注册表键值的路径也不一样么?

怎样找到相应的键值 注册表路径?
作者: lcg823    时间: 2012-9-24 17:04

发现这个代码不错,直接绕过安全等级,运行宏。
  1. Set app = WScript.CreateObject( "Excel.Application")
  2. app.visible=true '如果没有此句将在后台运行,不可见
  3. set fso = createobject("scripting.filesystemobject")
  4. set wb = fso.getfile("book1.xls")   'book1.xls为带宏的表格
  5. app.WorkBooks.Open wb
复制代码
'将该vbs文件和带有宏代码的相应Excel工作簿放在同一路径下,运行vbs就能直接运行宏

'win7 winXP下的office2003及2007都测试通过




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2