VBS从循环到数组添加值

时间:2013-07-05 02:27:11

标签: vba loops ms-word word-vba

我有一个VBS,可以在word文档中找到下一个曲目更改,然后会显示一个带有页码的消息框。

这循环并且它不是问题,但我要做的是将这些'CurPage'变量添加到单个数组中。因此,而不是msgbox 36然后msgbox 38 - 它是msgbox 36,38等。

另外,我需要计算文件末尾以退出循环。

Dim i As Integer
i = 0

'get us home
    Selection.HomeKey Unit:=wdStory

Do
'find next change
    WordBasic.NextChangeOrComment

'get current page
    CurPage = Selection.Information(wdActiveEndAdjustedPageNumber)
    MsgBox (CurPage)

'<Add CurPage value to array>

'<find out if we have reached the end of file, if so end loop>


  i = i + 1
Loop Until i = 188
End Sub

1 个答案:

答案 0 :(得分:0)

我会解决你的第一个问题;你需要一个单独的帖子为第二个(关于退出循环),因为它是一个完全不同的主题。

您不需要数组。您需要一个可以使用MsgBox显示的字符串。

  Dim i As Integer
  Dim Pages as String

  i = 0
  Pages = "";    

  'get us home
  Selection.HomeKey Unit:=wdStory

  Do
    'find next change
    WordBasic.NextChangeOrComment

    'get current page
    CurPage = Selection.Information(wdActiveEndAdjustedPageNumber)
    Pages = Pages & ", " & CurPage

    '<Add CurPage value to array>

    '<find out if we have reached the end of file, if so end loop>

    i = i + 1
  Loop Until i = 188
  MsgBox Pages

End Sub