将xml转换为xls

我正在寻找如何实现一种方法来获取基于Web的XML数据到电子表格的想法。 理想的解决scheme是在每次打开时更新电子表格,而不需要用户交互(.ie,我宁愿不必告诉人们运行macros)。

然而,我的第一个想法(也许我最终会去)是一个Perl脚本,下载的XML,parsing它,并吐出一个电子表格 – 这将不会更新电子表格,我将不得不生成关于某种types的日程安排的文件(是的,我更喜欢完全的自动化和编码自己的工作:))。 我想(我想)是XML的odbc将接受一个URI,这可能是理想的。 这样,也许我可以将XPath映射到列,电子表格每次打开时都会自动更新。 或者,也许在VBA中有一种方法来获取URI并parsingXML,并在工作簿打开时运行它?

使用DOMparsingXML文件,然后将相关值吐出到表单上。 下面是一个简单的工作示例,让你开始:

Dim d As DOMDocument Dim n As IXMLDOMNode Dim s As String Set d = New DOMDocument d.async = False d.Load "http://www.democracynow.org/podcast-video.xml" ' or "C:\myfile.xml" Set n = d.SelectSingleNode("//channel/description") s = n.Text Range("A1") = s 

此早期绑定需要参考集如下:工具>引用…> Microsoft XML

请注意, d.async = False强制加载完成,然后再继续; 加载远程文件时,这一点尤为重要。

你想要

每次打开时更新电子表格,只需很less或者没有用户交互(即,我宁愿不必告诉人们运行macros)。“

然后将macros放在Workbook_Open事件中! 这就是它的目的。

xml文件在哪里? 这是位置修复?

如果是的话,你可以在Excel中创build一个数据连接到这个XML文件。

然后设置xml连接刷新excel文件打开。