Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vba VBS将值从循环添加到数组_Vba_Loops_Ms Word - Fatal编程技术网

Vba VBS将值从循环添加到数组

Vba VBS将值从循环添加到数组,vba,loops,ms-word,Vba,Loops,Ms Word,我有一个VBS,它在word文档中查找下一个曲目更改,然后显示一个带有页码的消息框 这是循环的,这不是问题,但我要做的是将这些“CurPage”变量添加到单个数组中。所以不是MSGBOx36,而是MSGBOx38,它是MSGBOx36,38等等 我还需要计算出文件的结尾以退出循环 Dim i As Integer i = 0 'get us home Selection.HomeKey Unit:=wdStory Do 'find next change WordBasic.

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

这是循环的,这不是问题,但我要做的是将这些“CurPage”变量添加到单个数组中。所以不是MSGBOx36,而是MSGBOx38,它是MSGBOx36,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
Dim i作为整数
i=0
“带我们回家
Selection.HomeKey单位:=wdStory
做
“找到下一个变化
WordBasic.NextChangeOrComment
'获取当前页面
CurPage=Selection.Information(wdActiveEndAdjustedPageNumber)
MsgBox(CurPage)
'
'
i=i+1
循环直到i=188
端接头

我将回答您的第一个问题;第二篇(关于退出循环)需要一篇单独的帖子,因为这是一个完全不同的主题

您不需要数组。您需要一个可以使用
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
Dim i作为整数
将页面变暗为字符串
i=0
页码=”;
“带我们回家
Selection.HomeKey单位:=wdStory
做
“找到下一个变化
WordBasic.NextChangeOrComment
'获取当前页面
CurPage=Selection.Information(wdActiveEndAdjustedPageNumber)
Pages=页面&“,”和页数
'
'
i=i+1
循环直到i=188
MsgBox页面
端接头