Sub aa()
Dim fysl As Long, fyhs As Long, rng As Range
With ActiveSheet
fysl = HPageBreaksCount
t = 1
For i = 1 To fysl
fyhs = HPageBreaks(i)LocationRow - t
t = HPageBreaks(i)LocationRow
PageSetupRightFooter = "第 &P 页,本页共" & fyhs & "行"
PrintOut from:=i, To:=i '打印页面
Next
End With
End Sub
因为EXCEL不能为所有的页面单独设置页脚,所以只能采用设置一次,打印一页,然后再继续下一页
建议将上面共几行放到表中单元格内,就不用这样麻烦
上面是在页面的右下角设置页脚,可以根据需要修改,居中还是靠左
ActiveSheetPageSetupLeftFooter = "页脚位置靠右左"
ActiveSheetPageSetupCenterFooter = "页脚位置居中"
ActiveSheetPageSetupRightFooter = "页脚位置靠右"
Private Sub CommandButton1_Click()
Dim p, r, s, t
s= "石膏板造型顶"
With SelectionFind
ClearFormatting
MatchWholeWord = True
MatchCase = False
t = Execute(FindText:=s)
End With
p= SelectionInformation(wdActiveEndPageNumber)
r= SelectionInformation(wdFirstCharacterLineNumber)
If t Then
MsgBox "成功,已找到“" & s & "”" & vbCrLf & _
"页码:"& p & vbCrLf & "行数:" & r, vbOKOnly, _
"成功"
Else
MsgBox "很遗憾,没有找到“" & s & "”", vbOKOnly, _
"遗憾"
End If
End Sub
写代码很辛苦,好心的楼主请 救济 点儿 悬赏分
'在工作薄的最前面插入一工作表
'在新表的A1、B1分别输入:表名、行数
'选定A1,运行下面的宏
Public Sub hang()
For i = 2 To SheetsCount
r = Sheets(i)CellsSpecialCells(xlCellTypeLastCell)Row
n = Sheets(i)Name
ActiveCellOffset(i, 0) = n
ActiveCellOffset(i, 1) = r
Next
End Sub
以下代码先设置一个待查找字符串,用findtext方法查找,然后用createchild方法插入书签。代码的运行环境为Win81,Word2010 VBA,Acrobat Pro DC,在本机测试成功。
使用到的主要方法为AVDocFindText和BookMarkcreateChild。
AVDocFindText有4个参数:
szText,要查找的字符串
bCaseSensitive,是否区分大小写,正数为区分,0为不区分
bWholeWordsOnly,是否匹配整个单词,正数为匹配,0为不匹配
bReset,查找开始的位置,正数则从第一页开始,0则从当前页开始
BookMarkcreateChild有3个参数
cName,用户在导航面板中看到的书签的名称。
cExpr,单击书签时要执行的表达式,为JavaScript
nIndex,(可选)在书签的子数组中,创建新子书签的基于0的索引。默认值为0。
Sub Pdf添加书签()
'为某书添加书签
Dim App As New AcrobatAcroApp
Dim PDoc As New AcrobatAcroPDDoc, AVDoc As New AcrobatAcroAVDoc
Dim Jso As Object
Dim BMark As Object '不能声明为AcrobatAcroPDBookmark,否则createchild方法不可用。
Dim PFile As String, WordTF As String, PageNum As Long
PFile = "F:\指定文件pdf" '要插入书签的pdf文件
WordTF = "要查找的"
If PDocOpen(PFile) Then
Set Jso = PDocGetJSObject
Set AVDoc = PDocOpenAVDoc("") '获得一个可见文档
JsobookmarkrootRemove '移除原有的所有书签
End If
If AVDocFindText(WordTF, 0, 0, 1) Then '从第一页开始,如果找到了字符串WordTF一次
PageNum = AVDocGetAVPageViewGetPageNum '获得当前页码
Set BMark = Jsobookmarkroot '设置书签根对象
BMarkcreateChild WordTF, "thispageNum=" & PageNum, 0 '创建一个书签
PDocSave 1, PFile
End If
PDocClose
AppCloseAllDocs
AppHide
AppExit
Set AVDoc = Nothing
Set PDoc = Nothing
Set App = Nothing
Set BMark = Nothing
Set Jso = Nothing
End Sub
在工程资源管理器 中
双击 ThisWorkbook
在代码窗口粘贴下列代码
在打开 工作簿 或 插入 工作表时
在第一表的A1单元将显示
工作簿总页数 = x ,x 为EXcel总页数
Private Sub Workbook_NewSheet(ByVal Sh As Object)
DebugPrint SheetsCount
Sheets(1)Cells(1, 1) = "工作簿总页数 = " & SheetsCount
Sheets(1)Select
End Sub
Private Sub Workbook_Open()
Sheets(1)Cells(1, 1) = "工作簿总页数 = " & SheetsCount
Sheets(1)Select
End Sub
有何问题请Hi我
以上就是关于打印时显示每页的行数 vba 语句全部的内容,包括:打印时显示每页的行数 vba 语句、word vba怎么查找字符串,并获取所在页码、所在行数、在excel中如何用VBA取得每页的行数等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)