Word vba跳转到下一页
好, 因此,作为学徒,我需要记录我每天做的事情。由于这将是一个很长的文档,我编写了一个VBA脚本,它已经在其中写入了保持不变的内容,比如日期 问题是,格式应该是每页一周。这意味着,当我周六到达时,脚本必须跳转到下一页的开头(并可能用段落填充结果空间)。我完全不知道是否有任何函数可以帮助我。我认为应该有一个tho,这听起来不是一个太奇怪的问题 现在这不是一个关键的问题,但它仍然很烦人,我想知道是否有任何解决办法。到目前为止的研究也没有奏效 如果有助于理解,请编写一些代码。基本上是关于评论的部分:Word vba跳转到下一页,vba,ms-word,Vba,Ms Word,好, 因此,作为学徒,我需要记录我每天做的事情。由于这将是一个很长的文档,我编写了一个VBA脚本,它已经在其中写入了保持不变的内容,比如日期 问题是,格式应该是每页一周。这意味着,当我周六到达时,脚本必须跳转到下一页的开头(并可能用段落填充结果空间)。我完全不知道是否有任何函数可以帮助我。我认为应该有一个tho,这听起来不是一个太奇怪的问题 现在这不是一个关键的问题,但它仍然很烦人,我想知道是否有任何解决办法。到目前为止的研究也没有奏效 如果有助于理解,请编写一些代码。基本上是关于评论的部分:
For i = InitDate To endDate
jump:
If CurrentDate = endDate Then GoTo EndSub
x = x + 1
strWeekday = weekday(CurrentDate, vbUseSystemDayOfWeek)
txtStr = Format(CurrentDate, "dddddd")
With Selection
.Font.Bold = True
.Font.Underline = True
.TypeText Text:=txtStr
.TypeParagraph
If x = 4 Then GoTo Thursday
If x = 5 Then GoTo Friday
'If x = 6 Then GoTo NewSheet
If x = 6 Then x = 0
.TypeParagraph
End With
CurrentDate = CurrentDate + 1
Next i
将在文本末尾插入硬分页符。(或者,一般来说,对于范围变量r
,在ChrW(12)
之后插入r。然后您可以从那里继续
编辑
现在您已经添加了代码,我可以向您展示更多内容。但是,由于您没有包含所有代码,我无法提供将按原样运行的内容。此外,我认为您可以将CurrentDate
替换为I
(反之亦然)
欢迎访问该网站!查看更多有关提问的信息,这些问题将吸引高质量的答案。您可以添加更多信息。正如braX指出的,您尝试了什么?您的“迄今为止的研究”是否包括Google和MSDN?您是否考虑过手动分页符?;)到目前为止添加了代码。是的,手动分页符是我的解决办法,但必须有一个更简单的解决方案。参数12代表什么?手动分页符。Word将一些非ASCII字符用于特殊代码,例如,5表示注释标记,12表示分页符。像^12
一样,也使用这些数字。
ActiveDocument.StoryRanges(wdMainTextStory).InsertAfter ChrW(12)
For i = InitDate To endDate
jump:
If CurrentDate = endDate Then GoTo EndSub
x = x + 1
strWeekday = weekday(CurrentDate, vbUseSystemDayOfWeek)
txtStr = Format(CurrentDate, "dddddd")
With Selection
.Font.Bold = True
.Font.Underline = True
.TypeText Text:=txtStr
.TypeParagraph
End With
' ** By the way, I would suggest you not GoTo out of a With block - that strikes me as likely to cause confusion later on.
If x = 4 Then GoTo Donnerstag
If x = 5 Then GoTo Freitag
'If x = 6 Then GoTo NewSheet
If x = 6 Then ' ** Try this
Selection.InsertAfter ChrW(12)
Selection.Collapse wdCollapseEnd
End If
If x = 6 Then x = 0
Selection.TypeParagraph
CurrentDate = CurrentDate + 1
Next i