是否可以将参数传递给选择节点路径?

问题描述 投票:-1回答:3

以下条件是返回特定节点下的元素列表。

Set List = xmlDoc.SelectNodes("//page[0]/method")

这里我总共有3页节点。并且我将一个参数传递到路径中以获取节点的特定元素并且它正在工作。

但是当我尝试用变量传递参数值时。它不起作用。

Dim i As integer
i=0
Set List = xmlDoc.SelectNodes("//page[i]/method")

有没有办法在循环中传递参数?

请帮我!

excel vba excel-vba
3个回答
0
投票

要将变量与文本组合,您需要使用quotes&

Dim i As integer
  i=0
Set List = xmlDoc.SelectNodes("//page[" & i & "]/method")

希望能帮助到你。


0
投票

以下是如何包含变量并循环它:

Dim i As integer
For i = 0 to 10
    Set List = xmlDoc.SelectNodes("//page[" & i & "]/method")

    ' Do something with the List

Next

0
投票

你可以使用辅助函数:

Function FormatString(s As String, ParamArray args())
    Dim x As Integer
    For x = 0 To UBound(args)
        s = Replace$(s, "{" & x & "}", args(x))
    Next
    FormatString = s
End Function

用法:

Set List = xmlDoc.SelectNodes(FormatString("//page[{0}]/method", i))
© www.soinside.com 2019 - 2024. All rights reserved.