Excel经常被用作业务单据的制作,例如出库单,一个很现实的需求是表单自动编号,希望每次打印时编号会自动递增。

很幸运Excel能够支持自动编号的实现,网上的方法很多,但自己找了半天也没能成功实现。不过网上还是找到了些许灵感。

首先,要知道Excel提供了一个Workbook_BeforePrint事件,这个事件可以在打印或打印预览之前被执行,由于打印预览不是真正的打印,所以如果在
Workbook_BeforePrint这个事件中递增编号显然不对。怎么办呢?Excel有没有Workbook_AfterPrint事件呢?很遗憾没有。

要是能区分打印预览和打印就好了,然而区分几乎是不可能的,所以,我觉得将系统自带的打印和打印预览功能失效掉。

失效很简单,只要设置Cancel=true就可以了。

Private Sub Workbook_BeforePrint(Cancel As Boolean)
Cancel = True
End Sub

好,我已经将系统打印功能失效了,那么我就要自己编写打印的代码。不知道怎么写代码?没有关系,可以录制宏。

执行打印的命令是:ExecuteExcel4Macro "PRINT(1,,,1,,,,,,,,2,,,TRUE,,FALSE)"

实现自动递增,
Range("B1").Select
ActiveCell.FormulaR1C1 = ActiveCell.FormulaR1C1 + 1

这里,我定义一个全局变量isPrint,在宏中设置,要打印时就设置成isPrint=true,这样我就可以事件中判断是否需要打印。

完整代码

Public isPrint As Boolean
Sub Macro1()
    isPrint = True
    ExecuteExcel4Macro "PRINT(1,,,1,,,,,,,,2,,,TRUE,,FALSE)"
     Range("B1").Select
    ActiveCell.FormulaR1C1 = ActiveCell.FormulaR1C1 + 1
End Sub
Private Sub Workbook_BeforePrint(Cancel As Boolean)
    Cancel = True
    If isPrint = False Then Exit Sub
    Cancel = False
    isPrint = False
End Sub

<script type="text/javascript"> </script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>

Excel如何实现表单编号自动递增?相关推荐

  1. excel设置图片自动更新_智能Excel排班表,日期自动更新,三班排班一键统计,极简轻松...

    Hello大家好,我是帮帮.今天跟大家分享一张智能Excel排班表,日期自动更新,班次一键统计,极简轻松. 为了让大家能更稳定的下载模板,我们又开通了全新下载方式(见文章末尾),以便大家可以轻松获得免 ...

  2. 泛微html模板与表单分离,泛微eteams业务表单,自动生成数据和报表

    原标题:泛微eteams业务表单,自动生成数据和报表 eteams业务表单用数据重新定义协作,台帐记录.数据汇报.外部调研收集一并搞定.彻底告别传统纸笔数据收集方式,实时完成数据提交,自动生成数据和报 ...

  3. excel数据表单_新的改进的Excel数据输入表单

    excel数据表单 Many moons ago, Dave Peterson created a sample Excel worksheet data entry form and kindly ...

  4. 关于表单回车自动提交的讨论

    关于表单回车自动提交的讨论 在做超限查询时,为了用户操作的易用性,在用户输入车牌号码后,直接回车就进行查询的操作,而不是等用户用鼠标点击"查询"了才发送请求去查询.可能我们都以为很 ...

  5. Java POJO Bean 对象与 Web Form 表单的自动装配

    PS: 我一直在找寻为什么 struts2有自动将form字段和getter setter 自动 匹配的功能, 这篇文章解答了我的疑惑 深度剖析:Java POJO Bean 对象与 Web Form ...

  6. iOS表单input自动填充后背景色变为黄色

    ios表单Input自动填充背景色变为黄色 问题描述 解决方案 问题描述 在开发页面的时候发现,在iOS上input框自动填充后input的背景色变为黄色,再点击一下就可以恢复正常. 解决方案 设置自 ...

  7. html表单注册跳转页面,出现一个问题,点击“注册”按钮页面进入注册表单后自动跳转回登录页面...

    源自:4-5 单页面应用Demo2(2) 出现一个问题,点击"注册"按钮页面进入注册表单后自动跳转回登录页面 用户名: 密码: 登录 注册 用户名: 密码: 再次输入密码: 确定 ...

  8. from 表单回车自动提交

    自动提交的情况 1 表单只有单个输入框 2 type='submit  这里注意button默认type为submit 解决方法 1 添加一个隐藏的输入框 2 form添加属性 οnsubmit=&q ...

  9. Excel 模拟form表单提交

    前端模拟form表单 function batSubmit() {var temp_form = document.createElement("form");//temp_for ...

最新文章

  1. 使用OpenVINO加速Pytorch表情识别模型
  2. Oracle计划新的移动OpenJDK项目
  3. ftp服务----基于虚拟用户的创建
  4. Git使用列表(四)
  5. git项目根据不同需求进行独立开发
  6. 微软2013年笔试题详解及深入
  7. 搜狗输入法精简_韩语输入法软件哪个好?(手机版amp;电脑版)
  8. JavaScript 中常用的弹窗
  9. 【POJ3784】【对顶堆 — 动态维护中位数】Running Media
  10. NYOJ 部分和问题
  11. 产业数字化转型升级案例:联合利华数字化供应链管理
  12. 3.5正交试验设计法
  13. pdf文件如何生成目录 wps_WPS文档如何生成目录你会了吗?
  14. 全网最详细解释Keil-MDK中Code、RO-data、RW-data、ZI-data的含义
  15. Java包装类 学习
  16. 如果十二星座都有自己的专属 App,你会是哪一款?
  17. 蓝牙、红外线与wifi 区别以及不同频段无线电磁波的穿墙和绕过障碍物能力
  18. 组成新数python_小组组名大全
  19. 2021程序员笔记本电脑推荐
  20. 怎么在一张图片中隐藏文件?

热门文章

  1. System.out::println()的理解?
  2. 网络教育计算机统考成绩,2021年网络教育统考成绩查询入口
  3. uniapp 分享到朋友圈
  4. 高可用高性能高并发量解决方案汇总整理
  5. 一个90后做游戏的女生自白
  6. Android - Application Fundamentals.
  7. MTK平台s5k3l6 PDAF线性度测试fail排查方法
  8. 基于ARM架构的柔性塑料芯片诞生了
  9. 高斯杯全国大学生数学建模挑战赛
  10. Caffeine本地缓存详解(一篇就明白)