2

下面是我的vba代码,

For x = 0 To EleXML.ChildNodes.Length - 1    
      Range("A10" & x) = EleXML.ChildNodes.Item(x).getAttribute("aa")
      Range("A10" & x) = EleXML.ChildNodes.Item(x).getAttribute("bb")
      Range("A10" & x) = EleXML.ChildNodes.Item(x).getAttribute("cc")
    Next x

我的单元格将从“A10”开始,如何在我的代码中使用“x”自动增加它?因此,在下一个循环中应该是“A11”。

提前致谢。

4

2 回答 2

1
For x = 0 To EleXML.ChildNodes.Length - 1    
      Range("A10").offset(x,0) = EleXML.ChildNodes.Item(x).getAttribute("aa")
      Range("A10").offset(x,0) = EleXML.ChildNodes.Item(x).getAttribute("bb")
      Range("A10").offset(x,0) = EleXML.ChildNodes.Item(x).getAttribute("cc")
Next x

我几乎总是Offset在这些情况下使用(文档),因为它比尝试手动创建字符串范围要清晰得多。

当您进行迭代并拥有类似的东西时,它会使事情变得更加清晰

myRange.offset(rowOffset, colOffset)

几乎所有替代方案(例如其他答案或评论中发布的答案)。

您还可以研究使用Cells(row, col)语法。

于 2013-05-29T11:50:19.190 回答
1

很简单:

For x = 0 To EleXML.ChildNodes.Length - 1    
  Range("A" & (10 + x)) = EleXML.ChildNodes.Item(x).getAttribute("aa")
  Range("B" & (10 + x)) = EleXML.ChildNodes.Item(x).getAttribute("bb")
  Range("C" & (10 + x)) = EleXML.ChildNodes.Item(x).getAttribute("cc")
Next x
于 2013-05-29T11:50:23.097 回答