将Excel工作表的内容复制到文本或XML文件

我有一个Excel(2010)工作簿。 其中一张表单包含约800行的XML标签。

它看起来像这样:

<?xml version="1.0" encoding="UTF-8" ?> <Data> <Entry> <Name>John<Name> <Age>58<Age> </Entry> <Entry> <Name>Amy<Name> <Age>29<Age> </Entry> </Data> 

每个元素都在一个单独的行/单元格上。

 A1 = <?xml version="1.0" encoding="UTF-8" ?> A2 = <Data> A3 = <Entry> A4 = <Name>John<Name> A5 = <Age>58<Age> 

。 。 。

等等。

这些不是纯文本值 – 内容是通过CONCATENATE跨不同单元格中的不同单元格生成的。

单元格A3的公式如下:

 =CONCATENATE(XML!A3,XML!B3,XML!C3) 

我想创build一个VBAmacros,将这个工作表的内容输出到XML文件或文本文件中。 它已经格式化为一个XML文件,所以我只是想保存的内容。

所有我在网上find的是如何保存工作表本身作为一个XML,但这是所有的数据转换为垃圾,因为它已经格式化,至less在外观上。 如果这是有道理的。

任何意见,将不胜感激,因为我没有与VBA工作过很多。

提前致谢!

 Sub SaveAsXML() Dim strFileName As String strFileName = Application.GetSaveAsFilename(filefilter:="XML Files (*.xml),*xml") ActiveSheet.SaveAs Filename:=strFileName, FileFormat:=xlTextPrinter, CreateBackup:=False End Sub 

FileFormat必须是xlTextPrinter ,否则它会在string中引用任何引号。