Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ms access .ImportXML命令在MS Access中出错_Ms Access_Xml Parsing_Vba - Fatal编程技术网

Ms access .ImportXML命令在MS Access中出错

Ms access .ImportXML命令在MS Access中出错,ms-access,xml-parsing,vba,Ms Access,Xml Parsing,Vba,我正在使用以下代码尝试导入XML文件以访问: my_file = "c:\temp\projects.xml" Application.ImportXML (my_file) 在第二行的某个点上,我收到一个错误31550,“并非所有数据都已成功导入。在Microsoft Access表“ImportErrors”中可以找到错误描述以及相关的坏记录行号。” 我必须结束或调试,并且独立于我的选择,ImportErrors表不会出现在Access中。是否需要一些额外的代码来创建表?(我有错误,下一步

我正在使用以下代码尝试导入XML文件以访问:

my_file = "c:\temp\projects.xml"
Application.ImportXML (my_file)
在第二行的某个点上,我收到一个错误31550,“并非所有数据都已成功导入。在Microsoft Access表“ImportErrors”中可以找到错误描述以及相关的坏记录行号。”

我必须结束或调试,并且独立于我的选择,ImportErrors表不会出现在Access中。是否需要一些额外的代码来创建表?(我有
错误,下一步继续
,但这没有帮助。)

另外,如果这样做有效,XML数据将加载到哪里?Access是否创建新表

XML数据将加载到哪里?Access是否创建新表

这取决于第二个(可选)ImportOptions参数的值。它可能是其中之一

acAppendData

acStructureAndData
(默认值)
acStructureOnly

对于这样的XML文件


戈德
汤普森
安妮
麋鹿
VBA语句

Application.ImportXML“C:\Users\Gord\Desktop\foo.xml”
将创建并填充一个名为[foo]的新表(如果名为[foo]的表已经存在,则为[foo1]),并且

Application.ImportXML“C:\Users\Gord\Desktop\foo.xml”,acAppendData

将尝试将XML文件中的数据附加到名为[foo]的现有表中。

您可能需要刷新Access中的表列表。选择(即,单击)任何现有对象(如果失败,请关闭并重新打开Access。)也不要查找名为just ImportErrors的表。如果创建了XML,其名称将包括导入器和导入目标表名称。还应注意,XML作为数据类型是一种开放式文件类型,其中的内容可以设计为无限结构、嵌套树、标记、节点等,这与表使用的二维行/列导入截然不同。此外,Access只导入以元素为中心的数据,而不导入以属性为中心的数据(因此,标记中的数据将被忽略)。可能发生的情况是,您的XML有点复杂,不符合2D结构。您需要首先评估XML文件(发布缩写版本),使用xsl转换到2D设置,或者查看通用的MSXML VBA对象。