我在使用 CreateObject() 声明新对象时遇到问题

Sub A()
    Dim x

    'This works
    Set x = CreateObject("Scripting.FileSystemObject")
    Set x = Nothing

    'This throws an error 429 "Active component cannot create object."
    Set x = CreateObject("MSXML2.DOMDocument60")
    Set x = Nothing

    'The only way I can create object is to add the reference using GUID
    Dim y As MSXML2.DOMDocument60
    Set y = New MSXML2.DOMDocument60
    Set y = Nothing
    'This works like a charm

End Sub

我不明白为什么“脚本”有效而“MSXML2”无效。

我在 Windows 7 64 位上使用 MS Access 2010 32 位。

最佳答案

使用后期绑定(bind)时,您并不总是使用相同的名称。 ActiveX 对象需要使用 OLE Programmatic Identifier

改成这样:

Set x = CreateObject("MSXML2.DOMDocument.6.0")

从 MSDN 文章 Building MSXML Applications :

关于ms-access - VBA CreateObject ("MSXML2.DOMDocument60") 抛出错误 429,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37046460/

10-12 03:45