[VBA]Excel中导出XML可以导到TestLink里面?

问题描述

由于工作需要,需要用到可以导入Testlink制式的XML文件,请问要如何做?对VBA精通的大神在哪里?主要是在原先在Testlink中导出的XML数据文档中有CDATA;而自己从Excel导出的XML却没有CDATA。求大神指点指点!期望效果如下:<?xmlversion="1.0"encoding="UTF-8"?><testcases><testcaseinternalid="5"name="拨号盘界面键盘验证"><node_order><![CDATA[0]]></node_order><externalid><![CDATA[1]]></externalid><version><![CDATA[1]]></version><summary><![CDATA[]]></summary><preconditions><![CDATA[]]></preconditions><execution_type><![CDATA[1]]></execution_type><importance><![CDATA[2]]></importance><steps><step><step_number><![CDATA[1]]></step_number><actions><![CDATA[<p>在IDLE界面点击拨号打开拨号盘,或者程序列表中点击拨号,进入拨号盘</p>]]></actions><expectedresults><![CDATA[<p>可以正常进入拨号盘</p>]]></expectedresults><execution_type><![CDATA[1]]></execution_type></step>

Issue如下:<?xmlversion="1.0"encoding="GB2312"standalone="yes"?><!--来源:export2XML.xls--><export2XML><Sheet1><internalid>5</internalid><name>拨号盘界面键盘验证</name><node_order>0</node_order><externalid>1</externalid><version>1</version><summary></summary><preconditions></preconditions><execution_type>1</execution_type><importance>2</importance><step_number>1</step_number><actions><p>在IDLE界面点击拨号打开拨号盘,或者程序列表中点击拨号,进入拨号盘</p></actions><expectedresults><p>可以正常进入拨号盘</p></expectedresults><execution_type2>1</execution_type2>

解决方案

本帖最后由 u010777776 于 2014-01-16 14:37:58 编辑
解决方案二:
读取每一行,替换![CDATA[和]]为空,再保存
解决方案三:
读取有CDATA的XML里的数据,再存新的XML用XmlDocument读取有CDATA,可直接读取CDATA里的数据,DimdocAsXmlDocument=NewXmlDocument()doc.Load("test.xml")DiminterAsXmlNode=doc.SelectSingleNode("//testcases/testcase")DiminternalidAsString=inter.Attributes("internalid").InnerTextDimnameAsString=inter.Attributes("name").InnerTextDimnode_orderAsXmlNode=doc.SelectSingleNode("//testcases/testcase/node_order")Dimnode_order1AsString=node_order.InnerTextDimexternalidAsXmlNode=doc.SelectSingleNode("//testcases/testcase/externalid")Dimexternalid1AsString=externalid.InnerTextDimversionAsXmlNode=doc.SelectSingleNode("//testcases/testcase/version")Dimversion1AsString=version.InnerTextDimsummaryAsXmlNode=doc.SelectSingleNode("//testcases/testcase/summary")Dimsummary1AsString=version.InnerTextDimpreconditionsAsXmlNode=doc.SelectSingleNode("//testcases/testcase/preconditions")Dimpreconditions1AsString=preconditions.InnerTextDimexecution_typeAsXmlNode=doc.SelectSingleNode("//testcases/testcase/execution_type")Dimexecution_type1AsString=execution_type.InnerTextDimimportanceAsXmlNode=doc.SelectSingleNode("//testcases/testcase/importance")Dimimportance1AsString=importance.InnerTextDimstep_numberAsXmlNode=doc.SelectSingleNode("//testcases/testcase/step/step_number")Dimstep_number1AsString=step_number.InnerTextDimactionsAsXmlNode=doc.SelectSingleNode("//testcases/testcase/step/actions")Dimactions1AsString=actions.InnerTextDimexpectedresultsAsXmlNode=doc.SelectSingleNode("//testcases/testcase/step/expectedresults")Dimexpectedresults1AsString=expectedresults.InnerTextDimexecutionAsXmlNode=doc.SelectSingleNode("//testcases/testcase/step/execution_type")Dimexecution1AsString=execution.InnerTextDimwriterAsXmlTextWriter=NewXmlTextWriter("new.xml",System.Text.Encoding.GetEncoding("utf-8"))writer.Formatting=Xml.Formatting.Indentedwriter.WriteRaw("<?xmlversion=""1.0""encoding=""GB2312""standalone=""yes""?>")'书写根元素()writer.WriteStartElement("export2XML")'添加次级元素writer.WriteStartElement("Sheet1")'添加子元素()writer.WriteElementString("internalid",internalid)writer.WriteElementString("name",name)writer.WriteElementString("node_order",node_order1)writer.WriteElementString("externalid",externalid1)writer.WriteElementString("version",version1)writer.WriteElementString("summary",summary1)writer.WriteElementString("preconditions",preconditions1)writer.WriteElementString("execution_type",execution_type1)writer.WriteElementString("importance",importance1)writer.WriteElementString("step_number",step_number1)writer.WriteElementString("actions",actions1)writer.WriteElementString("expectedresults",expectedresults1)writer.WriteElementString("execution_type2",execution1)writer.WriteEndElement()'关闭根元素writer.WriteFullEndElement()'将XML写入文件并关闭writerwriter.Close()

解决方案四:
多谢!我试试

时间: 2024-09-26 11:33:36

[VBA]Excel中导出XML可以导到TestLink里面?的相关文章

请问excel中导出的数据如何分为垂直的两排向下排列,不要一列排列,怎么实现?

问题描述 请问excel中导出的数据如何分为垂直的两排向下排列,不要一列排列,怎么实现? 请问excel中导出的数据如何分为垂直的两排向下排列,不要一列排列,怎么实现? 解决方案 http://jingyan.baidu.com/article/9faa72315d6bd5473c28cbe9.html

excel中导出的账套数据如何做到5个数据一空,再5个数据

问题描述 excel中导出的账套数据如何做到5个数据一空,再5个数据 excel中导出的账套数据如何做到5个数据一空,再5个数据,是在制作某个软件中 解决方案 循环后插入空行,判断下 for (int i =0; i < datatable.rows.count; i++) { if (i % 5 == 0) 添加空行 } 解决方案二: 五个数据和到一起,然后用逗号等分割.

在Excel2003中创建XML映射

excel|xml|创建 Microsoft Office Excel 2003 通过允许您将自己的 XML 架构定义 (XSD) 添加到工作薄,提高了对使用本机 XML 的支持.这样可以创建一个 XML 映射,用于在导入或导出数据时使数据变得更有意义.因此,您可以导入符合自定义 XML 词汇或架构的数据,然后使用相同的XML 架构将该数据写回去. 该功能面向 Office 解决方案开发人员,但专家用户也能够很好地使用它.该功能使您能够: • 在 Excel 电子表格和 XML 结构之间创建一个

VBA在Excel中的应用(三)

目录 Chart Export Chart Format Chart Lengend Chart Protect Chart Title Chart Chart Export 1.将Excel中的图表导出成gif格式的图片保存到硬盘上 Sub ExportChart() Dim myChart As Chart Set myChart=ActiveChart myChart.Export Filename:="C:\Chart.gif", Filtername:="GIF&q

asp.net中导出excel数据的方法汇总

  1.由dataset生成  代码如下   public void CreateExcel(DataSet ds,string typeid,string FileName)     {     HttpResponse resp;     resp = Page.Response;     resp.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");     resp.AppendHeader("Co

关于java中导出excel的问题 POI

问题描述 关于java中导出excel的问题 POI 怎样才能实现将excel表格中的单元格中的汉字样式导出来,不是标题,而是普通单元格,比如我在某个单元格中设置了字体加粗,怎么实现导出的excel中这个字体也是加粗的. 解决方案 // 生成一个样式 HSSFCellStyle style = workbook.createCellStyle(); // 设置这些样式 style.setFillForegroundColor(HSSFColor.SKY_BLUE.index); style.se

.Net中导出数据到Excel(asp.net和winform程序中)_实用技巧

一.asp.net中导出Excel的方法: 在asp.net中导出Excel有两种方法,一种是将导出的文件存放在服务器某个文件夹下面,然后将文件地址输出在浏览器上:一种是将文件直接将文件输出流写给浏览器.在Response输出时,t分隔的数据,导出Excel时,等价于分列,n等价于换行. 1.将整个html全部输出Excel 此法将html中所有的内容,如按钮,表格,图片等全部输出到Excel中. 复制代码 代码如下: Response.Clear(); Response.Buffer= tru

jsp利用POI生成Excel并在页面中导出的示例_JSP编程

java中导出Excel有两个组件可以使用,一个是jxl,一个是POI,我这里用的是POI.导出是可以在服务器上生成文件,然后下载,也可以利用输出流直接在网页 中弹出对话框提示用户保存或下载.生成文件的方式会导致服务器中存在着垃圾文件,实现方式不太优雅,所以这里我采用的是后面直接通过输出流的方式. 1.修改WEB服务器的CONF/web.xml,添加 Xml代码 <mime-mapping> <extension>xls</extension> <mime-typ

列出SQL SERVER 所有表、字段定义,类型,长度,一个值等信息,并导出到Excel 中

excel|server SET ANSI_NULLS OFF GO SET NOCOUNT ON GO           SET LANGUAGE 'Simplified Chinese' go DECLARE @tbl nvarchar(200),@fld nvarchar(200),@sql nvarchar(4000),@maxlen int,@sample nvarchar(40)           SELECT d.name TableName,a.name FieldName,