- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
★Excel服务器学习和下载园地★
[分享] 在Excel工作表的任意单元格中设置页码 [复制链接]
文章不当之处,请Excel VBA高手指教为谢!
转载于一片白云博客:/ycy_sdfc/
问:在Excel中设置第几页共几页,绝大部分人会想道用“页面设置”,但你是否想过将“第N页/总M页”放到任意单元格中?而不仅仅是置于页眉页脚中?
答:实现方法一般有两种:使用VBA和使用宏表函数
方法一,用VBA
Public Function Page(x As Range, z As Byte)
特别注意:当Z参数是0时,统计指定单元格所在页的页码(是以列分页符的值是1为前提条件的)
由自定义函数的Z参数来确定是进行工作表选定单元格所在页数
或是工作表总页数计算
当Z参数是0时,统计指定单元格所在页的页码
当Z参数是1至255任一个数值时,统计工作表总页数
If z = 0 Then
ih = 0
For Each yh In ActiveSheet.HPageBreaks
ih = ih + 1
If x.Row = yh.Location.Row Then
Page = ih
Exit Function
End If
Next yh
Page = ih + 1 以上8行代码及本行代码,最终得出指定单元格所在页的页码
Else
Page = (ActiveSheet.HPageBreaks.Count + 1) * (ActiveSheet.VPageBreaks.Count + 1) 统计工作表总页数
End If
Application.Volatile 本代码将此自定义函数标识为易失性函数,对自定义函数进行重算
End Function
举例1:我们要A1单元格中得出“当前工作表指定的单元格(A100)所在页数”是多少页?
=page(a100,0)
举例2:我们要A1单元格中得出“当前工作表总页数”是多少页?
=page(a100,1)
这里的公式中,单元格引用(A100)可以是任意单元格引用(公式所在单元格除外,否则会出现循环引用,出现错误);Z参数可以是1至255之间的任意值。
方法二,用宏表函数与公式
1. 首先:使用快捷键CTRL+F3打开定义名称,再在上面输入“纵当页”,在下面引用位置处输入:=IF(ISNA(MATCH(ROW(),GET.DOCUMENT(64))),1,MATCH(ROW(),GET.DOCUMENT(64))+1)
2. 然后再继续添加第二个名称:“横当页”,在下面引用位置处输入:=IF(ISNA(MATCH(column(),GET.DOCUMENT(65))),1,MATCH(column(),GET.DOCUMENT(65))+1)
3. 再输入“总页”;引用位置处输入:=GET.DOCUMENT(50)+RAND()*0
4. 最后再定义“页眉”,引用位置:=第IF(横当页=1,纵当页,横当页+纵当页)页/共总页页
5. 在函数栏使用应用即可得到需要的页码
★关于方法二用到的宏函数知识补充:
GET.DOCUMENT(type_num, name_text)
Type_num 指明信息类型的数。下表列出 type_num 的可能值与对应结果。
Type_num 返回
1 如果工作簿中不只一张表,用文字形式以“[Book1]Sheet1”的格式返回工作表的文件名。否则,只返回工作簿的文件名。工作簿文件名不包括驱动器,目录或窗口编号。通常最好使用 GET. DOCUMENT(76) 和 GET. DOCUMENT(88) 来返回活动工作表和活动工作簿的文件名。
2 作为文字,包括name_text的目录的路径。如果工作簿name_text未被保存,返回错误值 #N/A。
3 指明文件类型的数
1 = 工作表
2 = 图表
3 = 宏表
4 = 活动的信息窗口
5 = 保留文件
6 = 模块表
7 = 对话框编辑表
4 如果最后一次存储文件后表发生了变化,返回TRUE;否则,返回FALSE。
5 如果表为只读,返回TRUE;否则,返回FALSE。
6 如果表设置了口令加以保护,返回TRUE;否则,返回FALSE。
7
您可能关注的文档
最近下载
- 蓄热式焚烧炉(RTO炉)系统安全技术要求.pdf VIP
- 爱岗敬业党课课件.ppt VIP
- 新苏教版一年级下册数学《数学连环画-生活中的数学故事》教案.docx VIP
- 2024年山西省中考数学试卷真题(含标准答案及解析).docx
- Q12分析报告_完整.pdf
- 浅析人工智能技术在项目管理中对资源优化与调度的探索.docx VIP
- 兵检心理测试 .pdf VIP
- TCECS_479-2017_砌体结构后锚固技术规程_最新结构规范.docx VIP
- 新苏教版一年级下册数学《数学连环画-画出你的数学故事》教案.docx VIP
- 在线网课学习课堂《中国电影经典影片鉴赏(北京师范大学)》单元测试考核答案.docx
文档评论(0)