VBA'set typelib = createobject("scriptlet.typelib")'Permission Denied

JAt*_*ton 7 excel vba excel-vba

我的代码有问题,似乎已经出现过夜.这有一些特点,所以我会尝试尽可能多地提供细节.

有问题的文件是一个excel工作簿,它根据传入的数据生成一个xml文件.该文件通过宏打开,填充和保存,此部分运行正常.

在此例程中为.xml创建GUID时会发生此问题:

Function GenGUID() As String

Dim strGUID As String
Dim TypeLib As Object

Set TypeLib = CreateObject("Scriptlet.TypeLib")
strGUID = TypeLib.guid

'dump the curly brackets
strGUID = Replace(strGUID, "{", "")
strGUID = Replace(strGUID, "}", "")

strGUID = Left(strGUID, Len(strGUID) - 2)

GenGUID = strGUID

End Function
Run Code Online (Sandbox Code Playgroud)

具体来说,行:

Set TypeLib = CreateObject("Scriptlet.TypeLib")
Run Code Online (Sandbox Code Playgroud)

这会引发"运行时错误70:权限被拒绝".

现在,特点.

  • 在4台机器中,文件被试用,它可以在其中一台机器上运行.
  • "工作"机器的用户尝试在其他3台机器上运行该文件无济于事.
  • 在3台"破损"机器中,2台在一夜之间安装了更新,而另一台机器在几天内没有安装更新."工作"机器自2月以来没有安装更新.
  • 管理员帐户已尝试运行该文件以排除隔夜权限更新.
  • 该文件昨天(2017年7月12日)在其中一台"破损"机器上运行正常.
  • 已检查所有参考库,它们与"工作"机器匹配.
  • 所有4台机器上使用的Excel版本均为2013 Pro.

上面的突出是更新问题.但是,昨天文件运行良好的机器是"破损"的机器没有在一夜之间更新,排除了这一点.

我们已经尝试了所有我们能想到的东西,以及大量的网络拖网寻找答案.一切都没有.

有没有人有任何想法?

在此先感谢您的帮助.

小智 0

今天早上我们也遇到了这个问题。

删除 Windows 更新 KB3213624。这解决了错误。