站長資訊網(wǎng)
最全最豐富的資訊網(wǎng)站

excelXML文檔 XML文檔元素的遍歷、添加和刪除操作的方法

excelXML文檔 XML文檔元素的遍歷、添加和刪除操作的方法,【excel助手】今天為大家分享一篇干貨知識,如何設(shè)置excelXML文檔countif函數(shù)查重復excelXML文檔 XML文檔元素的遍歷、添加和刪除操作的方法”快跟著小編來看看這一干貨文章吧!

借助于DOM對象,在Excel中,用戶可以編寫VBA程序方便地對XML文件進行讀取、遍歷、修改以及刪除等操作。本文分別介紹XML文檔元素的遍歷、添加和刪除操作的方法。

1、啟動Excel并創(chuàng)建一個新文檔,打開Visual Basic編輯器,創(chuàng)建一個模塊,在模塊的“代碼”窗口中輸入如下代碼。按F5鍵運行程序代碼,在“立即窗口”中顯示XML文檔數(shù)據(jù),如圖1所示。

Sub GetXMLNode()

Dim xmldoc As DOMDocument

Dim nodeList As IXMLDOMNodeList

Dim node As IXMLDOMNode

Set xmldoc=New DOMDocument

xmldoc.async=False

xmldoc.Load ThisWorkbook.Path&"學生信息.xml" '加載XML數(shù)據(jù)文檔

Set nodeList=xmldoc.getElementsByTagName("學生信息") '獲取學生信息節(jié)點序列

For Each node In nodeList '遍歷節(jié)點序列中所有節(jié)點

Debug.Print node.XML '輸出當前節(jié)點的XML字符串

Next

Set node=Nothing

Set nodeList=Nothing

Set xmldoc=Nothing

End Sub

excelXML文檔 XML文檔元素的遍歷、添加和刪除操作的方法

圖1 在“立即窗口”中顯示XML文檔數(shù)據(jù)

2、在“代碼”窗口中繼續(xù)輸入如下程序代碼。運行程序代碼,在“立即窗口”中可以看到程序運行的結(jié)果。此時,學生信息節(jié)點都添加了“入學日期”節(jié)點項,如圖2所示。程序在當前Excel文檔相同的文件夾中生成名為“學生信息New.xml”的文件,其中學生信息的節(jié)點添加了相應的“入學日期”節(jié)點項,并且這些節(jié)點都以當前時間作為初始設(shè)置數(shù)據(jù),如圖3所示。

Sub AddElement()

Dim xmldoc As DOMDocument

Dim node As IXMLDOMNode

Dim rootNode As IXMLDOMNode

Dim newNode As IXMLDOMNode

Dim rtnnode As IXMLDOMNode

Set xmldoc=New DOMDocument

xmldoc.Load ThisWorkbook.Path&"學生信息.xml" '加載XML數(shù)據(jù)文檔

Set rootNode=xmldoc.DocumentElement '獲取文檔根節(jié)點

For Each node In rootNode.ChildNodes '遍歷根節(jié)點所有學生信息子節(jié)點

Set newNode=xmldoc.createElement("入學日期") '創(chuàng)建"入學日期"元素節(jié)點

Set rtnnode=node.appendChild(newNode) '將新節(jié)點插入到當前學生信息節(jié)點

rtnnode.Text=Format(Now,"yyyy-mm-dd") '設(shè)置當前插入節(jié)點的文本信息

Debug.Print node.XML '輸出當前學生信息節(jié)點的XML字符串

Next

On Error Resume Next

Kill ThisWorkbook.Path&"學生信息New.xml" '刪除臨時文檔

On Error GoTo 0

xmldoc.Save ThisWorkbook.Path&"學生信息New.xml" '保存XML文檔

Set node=Nothing

Set xmldoc=Nothing

End Sub

excelXML文檔 XML文檔元素的遍歷、添加和刪除操作的方法

圖2 “立即窗口”中顯示的程序運行結(jié)果

excelXML文檔 XML文檔元素的遍歷、添加和刪除操作的方法

圖3 XML文檔中添加了新的節(jié)點項

提示

程序使用For…Each In結(jié)構(gòu)遍歷XML文檔的所有節(jié)點,使用節(jié)點對象的AppendChild方法來實現(xiàn)節(jié)點的添加。在默認情況下,AppendChild方法將新建立的節(jié)點插入到父節(jié)點中最后一個子節(jié)點之后。如果需要將節(jié)點插入到其他節(jié)點之前,則需要使用InsertBefore方法。該方法除了接受節(jié)點對象參數(shù)外,還接受目標節(jié)點對象,插入節(jié)點將位于該目標節(jié)點之前。

3、在“代碼”窗口中輸入如下代碼。運行程序代碼,在“立即窗口”中顯示程序運行結(jié)果。這里,“入學日期”節(jié)點項已經(jīng)被移除,如圖4所示。打開“學生信息New.xml”文件,可以查看到刪除XML文檔元素后的文檔內(nèi)容,如圖5所示。

Sub DeleteElement()

Dim xmldoc As DOMDocument

Dim node As IXMLDOMNode,rootNode As IXMLDOMNode

Set xmldoc=New DOMDocument

xmldoc.Load ThisWorkbook.Path&"學生信息New.xml" '加載XML數(shù)據(jù)文檔

Set rootNode=xmldoc.DocumentElement '獲取根節(jié)點

For Each node In rootNode.ChildNodes '遍歷所有"學生信息"

node.RemoveChild node.ChildNodes(node.ChildNodes.Length-1) '移除"入學日期"節(jié)點

Debug.Print node.XML '輸出節(jié)點的XML字符串

Next

On Error Resume Next

Kill ThisWorkbook.Path&"學生信息New.xml" '刪除臨時文檔

On Error GoTo 0

xmldoc.Save ThisWorkbook.Path&"學生信息New.xml" '重新保存文檔

Set node=Nothing

Set xmldoc=Nothing

End Sub

excelXML文檔 XML文檔元素的遍歷、添加和刪除操作的方法

圖4 “立即窗口”中顯示程序運行結(jié)果

excelXML文檔 XML文檔元素的遍歷、添加和刪除操作的方法

圖5 XML文檔中的數(shù)據(jù)結(jié)構(gòu)

提示

程序中使用RemoveChild方法將“入學日期”節(jié)點項從XML文檔中移除。

贊(0)
分享到: 更多 (0)
網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號
日本精品一区二区三区四区| 国产在线精品免费aaa片| 99久久免费中文字幕精品| 日韩精品在线一区二区| 久久99精品久久久久久动态图| 日本精品少妇一区二区三区| 国产精品久久婷婷六月丁香| 国语精品一区二区三区| 国产日韩久久免费影院| 精品国产天线2019| 99精品久久精品| 中文字幕一区二区三区日韩精品| 亚洲精品福利网站| 国产亚洲精品高清在线| 国产精品亚洲色婷婷99久久精品 | 久久99精品九九九久久婷婷| 国内精品视频一区二区三区八戒| 亚洲av永久无码精品国产精品| 国产亚洲日韩在线a不卡| 亚洲av无码成人精品国产| 久久精品无码精品免费专区| 亚洲国产精品人人做人人爱| 精品国产不卡在线电影| 91热久久免费精品99| 国产拍揄自揄精品视频| 日韩在线播放全免费| 国产微拍精品一区二区| 精品无码日韩一区二区三区不卡 | 精品国产sm捆绑最大网免费站| 成人精品视频99在线观看免费| 中文字幕日韩精品无码内射| 国产成人精品午夜福利在线播放| 久久精品视频99精品视频150| 国产精品成人小电影在线观看| 国产成人精品一区二三区| 无码国内精品久久综合88| 国产精品人成在线播放新网站| chinese精品男同志浪小辉| 国产精品久久久久影视青草| 久久久久久亚洲精品影院| 无码精品人妻一区二区三区中|