36

我正在尝试将 xml 数据导入到 excel 中。所以代码的第一行是

Dim XMLDOC As MSXML2.DOMDocument

这给出了一个错误“未定义用户定义的类型”

4

5 回答 5

45

在 VBE 中,转到 Tools -> References,然后选择 Microsoft XML, v6.0(或任何您最新的版本。这将使您能够访问 XML 对象库。

更新了精美的图片!

在此处输入图像描述

于 2012-06-28T13:36:59.600 回答
35

我已经DOMDocument定义了哪些需要,Microsoft XML, v3.0但我Microsoft XML, v6.0选择了导致以下错误的参考

“未定义用户定义类型”。

解决方案

解决方案是更改DOMDocumentDOMDocument60(60 使用 6.0 版)或Microsoft XML, v3.0使用DomDocument.


只是一个简短的说明,如果有人使用不同的版本,例如 Microsoft XML,v4.0,那么DOMDocument40应该使用。这是因为末尾的数字DOMDocument特定于正在使用的库的版本。

于 2016-04-01T11:19:27.740 回答
4

我使用其他人编写的 VBA Excel 宏,最近从 Windows 7 / Office 2010 升级到 Windows 10 / Office 2016 后,我的任务是修复它。我开始收到相同的“未定义用户定义类型”编译错误。我之前的安装也有 MS XML v6.0,但显然你必须在 Windows 10 和/或 Office 2016 上的代码中特别指出这个版本(我无法确认是哪个升级导致了问题)。我能够通过对以下内容进行查找/替换来解决该问题:

"DOMDocument" to "MSXML2.DOMDocument60"
"XMLHTTP" to "MSXML2.XMLHTTP60"
于 2017-09-26T15:15:35.857 回答
3

我正在使用 Microsoft Windows 10 和 Office 2016。

使用Microsoft XML 6.0并不能解决问题。

选择 Microsoft XML 3.0修复了编译错误

Microsoft XML 3.0 参考

于 2018-06-08T22:30:41.273 回答
0

我安装了第 3 版和第 6 版,项目使用的是第 4 版。我从https://www.microsoft.com/en-us/download/details.aspx?id=15697安装了第 4 个版本,这解决了问题。

于 2020-05-15T10:19:53.070 回答