将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中引用任何引号。