使用vbscript将xls文件转换为dat

时间:2018-01-10 14:58:00

标签: xml vbscript

我正在处理一个vbscript,它需要在命令提示符下运行并传递args,并将xls文件(带有多个工作表)转换为dat文件.dat文件的格式在外部XML文件中指定。

xml文件如下所示

<RECORD>
<CD>
<Name>HEAD</Name>
<Length>4</Length>
</CD>
<CD>
<Name>ORGCODE</Name>
<Length>5</Length>
</CD>
<CD>
<Name>ORGNAME</Name>
<Length>30</Length>
</CD><CD>
<Name>SCNAME</Name>
<Length>30</Length>
</CD>
<CD>
<Name>FILLER</Name>
<Length>290</Length>
</CD>
</RECORD>

我想获取长度的文本和计数(在本例中为5),然后将文本添加到字典中。稍后我将使用它来确定我在dat文件中需要多少空格。

我尝试过以下但是没有用

Set objXML = CreateObject("Microsoft.XMLDOM")

objXML.Load(fileloc)
Set obj =  objXML.getElementsByTagName("Length")

For i = 1 To obj.length 
    objDict.Add i, obj.Item(i).Value()
Next

“============================================== ==========

 Dim objXML : Set objXML = CreateObject("Msxml2.DOMDocument")
  objXML.setProperty "SelectionLanguage", "XPath"
  objXML.async = False
  objXML.load fileloc

    Dim sXPath : sXPath = "/RECORD/CD/Length"
    Dim ndlX : Set ndlX = objXML.selectNodes(sXPath)

    For i = 1 To ndlX.length
    msgbox "found"
    Next

以下是我之前编写并通过QTP工作的代码

“============================================== ======

Set objDict = CreateObject ("Scripting.Dictionary")
Set objXML  = XMLUtil.CreateXML()
objXML.LoadFile(fileloc)
Set obj = objXML.ChildElementsByPath("/RECORD/CD/Length")

    For i = 1 To obj.Count
        objDict.Add i, obj.Item(i).Value()
    Next

有人可以帮忙吗?

0 个答案:

没有答案