用户登录
用户注册

分享至

vbaword第几页第几行

  • 作者: 周猩猩
  • 来源: 51数据库
  • 2020-04-21

1.vba确定word指定文字在第几页

亲,代码如下,查找第一次出现“ABC”的所在页的页码。请根据情况自行修订需要查找的字符:

Sub cz()

Dim MyRange As Range

Set MyRange = ActiveDocument.Content

MyRange.Find.Execute FindText:="ABC", Forward:=True

MsgBox MyRange.Information(wdActiveEndPageNumber)

End Sub

2.如何在word中使用VBA得出每一页都多少行文字啊

Sub LinesOfPage()

'方法很简单,就是数

Dim PageNo As Integer, Lines As Integer, MovedLines As Integer

'先确定现在的页码

PageNo = Selection.Information(wdActiveEndAdjustedPageNumber)

'行计数清零

Lines = 0

Do

'向上挪一行,如果到头了没挪动或挪到上一页去了就停止

If Selection.Move(wdLine, -1) = 0 Or PageNo Selection.Information(wdActiveEndAdjustedPageNumber) Then Exit Do

'还在同一页行数加1,继续挪

Lines = Lines + 1

Loop

'向下挪回开始的位置

Selection.Move wdLine, Lines

Do

'现在开始向下挪,,如果到尾了没挪动或挪到下一页去了就停止

If Selection.Move(wdLine, 1) = 0 Or PageNo Selection.Information(wdActiveEndAdjustedPageNumber) Then Exit Do

'还在同一页行数加1,继续挪

Lines = Lines + 1

Loop

'最后Lines就是这页的行数

End Sub

3.这段VBA拆分WORD的代码,哪里是指定分几页的地方

类的代码不全,也没有找到分页的地方

//获取文件共页数

Private Function getTotalPages(filename)

//是否有效页

Private Function isPagesValid()

//删除页,不全

Private Sub deletePages(keepPage, t)

//下面代码及后面的是主程序,msoWord_SplitPages实例化

Set obj = New msoWord_SplitPages

对象属性变量setPageWidth在类里也没有找到。

4.word vba 怎么获取当前光标所在页码,并获取该页有多少行

Sub Macro2()

Dim r, p, r0, p0, rr, pp

p= Selection.Information(wdActiveEndPageNumber) '当前页码

r= Selection.Information(wdFirstCharacterLineNumber) '当前行

'数行数

p0 = p

rr = r

Do

Selection.MoveDown Unit:=wdLine, Count:=1

pp = Selection.Information(wdActiveEndPageNumber)

r0 = Selection.Information(wdFirstCharacterLineNumber)

If pp > p Then

'退回原处

Selection.MoveUp Unit:=wdLine, Count:=(rr - r + 1)

Exit Do

End If

If rr = r0 Then

'退回原处

Selection.MoveUp Unit:=wdLine, Count:=(rr - r)

Exit Do

End If

rr = r0

Loop

MsgBox "当前页码:" & p & vbCrLf &; "本页总行数:" & rr

End Sub 申请加悬赏分!!!

5.VBA怎样选择第二页或者第三页的表格

Sub 选择第N页中第一个表格_芐雨()

Dim i As Table, N As Integer, Pages As Integer

Pages = ActiveDocument.Content.Information(wdActiveEndAdjustedPageNumber) '当前共多少页,设为Pages

N = InputBox("请输入需要选择的表格序号(仅限数字)" &; "数字范围1-" & Pages) '输入第几页,设为N

For Each i In ActiveDocument.Tables

i.Select '通过选择表格实现页的跳转

If Selection.Information(wdActiveEndPageNumber) = N Then '当前页是否是输入的第N页

i.Select '选择表格

Exit Sub '跳出

End If

Next

End Sub虽然操作上支持可以用ctrl选择一页的多个表格,不过VBA中好像没有此类方法,这个是选择第N页的第一个表格。

6.WORD VBA 指定任意页为当前页

这么简单的问题为什么就没人回答呢?

如果不用VBA更简单,编辑菜单--》定位 左面选 页,右边输入任意数字后确定就可以了。

用VBA的话其实就是用宏实现上面这个过程。

两句代码就可以了。

MyPageindex = InputBox("请输入页码:", "页码跳转")

Selection.GoTo What:=wdGoToPage, Which:=wdGoToAbsolute,Name:=MyPageindex

转载请注明出处51数据库 » vbaword第几页第几行

软件
前端设计
程序设计
Java相关