功能简介:有时需要选定光标所在页的整页文本,此代码将以右键方式作用(右击/选定当前页命令) Private Sub Document_Close() On Error Resume Next Application.CommandBars("Text").Controls("选定当前页").Delete '恢复原 有菜单 End Sub '---------------------- Private Sub Document_Open() Dim Half As Byte On Error Resume Next Dim NewButton As CommandBarButton Application.CommandBars("Text").Controls("选定当前页").Delete '预防性 删除 Half = Int(Application.CommandBars("Text").Controls.Count / 2) '中间位置 Set NewButton = Application.CommandBars("Text").Controls.Add(Type:=msoControlButton, Before:=Half) With NewButton .Caption = "选定当前页" '命令名称 .FaceId = 100 '命令的 FaceId .Visible = True '可见 .OnAction = "SelectCurrentPage" '指定响应过程名 End With End Sub '---------------------- Sub SelectCurrentPage() Dim CurrentPageStart As Long, CurrentPageEnd As Long Dim CurrentPage As Integer, Pages As Integer On Error Resume Next With Selection CurrentPage = .Information(wdActiveEndPageNumber) '取得当前页页 码 Pages = .Information(wdNumberOfPagesInDocument) '取得文档总页 数 '返回当前页起点位置 CurrentPageStart = .GoTo(What:=wdGoToPage, Which:=wdGoToNext, Name:=CurrentPage).Start If CurrentPage = Pages Then '两者相等则最后位置为文档最后位置 CurrentPageEnd = ActiveDocument.Content.End Else '否则则为下一页的起点(本页的最后位置) CurrentPageEnd = .GoTo(What:=wdGoToPage, Which:=wdGoToNext, Name:=CurrentPage + 1).Start End If ActiveDocument.Range(CurrentPageStart, CurrentPageEnd).Select End With End Sub