在网上查了关于在单元格中插入页码的方法,网上基本都是这样回答: (http://zhidao.baidu.com/question/294891767.html) 但是我个人认为答案未必全正确。 比如用用VBA的方法,没有所写的这么简单,还要考虑页的纵向横向以及打印设置的顺序问题。因较复杂暂不在此讨论。大家可参见Excelhome出版的《Excel实战技巧精粹》第597页。 如果要在任意单元格中显示当前页码,用宏表函数的方法,可分三种情况: 1、打印页都是纵向排列。 点CTRL+F3打开定义名称,名称输入“纵当页”,在下面引用位置处输入: =IF(ISNA(MATCH(ROW(),GET.DOCUMENT(64))),1,MATCH(ROW(),GET.DOCUMENT(64))+1) 在任意单元格中输入以下公式即可: ="第"&纵当页&"页" 2、打印页都是横向排列。 点CTRL+F3打开定义名称,名称输入“横当页”,在下面引用位置处输入: =IF(ISNA(MATCH(column(),GET.DOCUMENT(65))),1,MATCH(column(),GET.DOCUMENT(65))+1) 在任意单元格中输入以下公式即可: ="第"&横当页&"页" 3、打印页既有纵向排列,又有横向排列。 有人这样回答: =IF(横当页=1,纵当页,横当页+纵当页) 我认为不能简单地把“横当页+纵当页”当成总页数。 如果打印设置为“先列后行”,则应这样算: =每列总页数*(横当页-1)+纵当页 如果打印设置为“先行后列”,则应这样算: =每行总页数*(纵当页-1)+横当页 但是,“每列总页数”或“每行总页数”能否用宏表函数进行计算?希望大家指教。在这里,我只有表格情况,输入数字。 此外,如果要在任意单元格中输入总页, 点CTRL+F3打开定义名称,名称输入“总页”,引用位置处输入: =GET.DOCUMENT(50)+RAND()*0 在任意单元格中输入以下公式即可: ="总"&总页&"页" ?"title |
|