00:00 / 05:00
连播
清屏
智能
倍速
点赞583
00:00 / 08:12
连播
清屏
智能
倍速
点赞139
00:00 / 02:14
连播
清屏
智能
倍速
点赞68
数据说1年前
超省心,Excel VBA一键制作考试考场座位桌贴表格模板 学校里面经常都在考试,而为了安排好考场,还需要在桌上贴上桌签,方便学生寻找自己的座位,往常咱都是用word里自带的邮件合并功能,一步步操作进行的,虽然也能实现目标,就是步骤 有些多,所以今天分享一个纯VBA宏代码版本的,一键将考场信息转成标准考试桌贴。 整个代码还是比较简单的,就是一个循环遍历把数据放在需要的单元格,更多的难点是在数学思维,如何进行行列转换。以咱们的模板为例,结果是每个标签是占5行2列,标签间用空行空列隔开,每一大行显示5个标签,共9大行,也就是每页A4纸显示45组标签。 先来看行号,前5个考生的行号都是1,第6-10个变成7,咱们用的公式是Int((i - stratrow) / columntotal) * numberofline + 1,i-startrow是把行号变成从0开始,根据考场表里的信息定,咱们是从第二行开始的,所以startrow=2,;columntotal是每大行放几个标签,这里是5个,int是直接取整,所以2-6行前5个考生都是0,6-10是1,结果* numberofline(每个标签占的行数)就得到一个偏移量,最后加上1就得到 一个跳转的行号。 和行号每5个跳转不同,列号是每5个重新从1开始循环。公式是((i - stratrow) Mod columntotal) * numberofcolumn + 1,行的时候咱们取的除法的商,这里咱们是取余,乘数numberofcolumn表示每个标签占几列,这里咱们是两列内容加一列空白分隔,所以是3,最后加上1就得到一个跳转的列号。 在实际赋值的时候,通过跳转行号+偏移量得到实际的行号,列号也是一样的,这样就得到一个最终的结果表。 最后是打印,回到咱们的设计目标,每页A4纸打印45组标签,当我们循环遍历到第46个考生的时候,停下来,进入if条件判断,用咱们刚刚计算的跳转行号+偏移量,得到一个实际行号,然后此行之前插入一个分页符,就可以了。 打印预览看一下,效果棒棒哒!#excel
00:00 / 05:47
连播
清屏
智能
倍速
点赞24
00:00 / 03:19
连播
清屏
智能
倍速
点赞6
00:00 / 00:52
连播
清屏
智能
倍速
点赞106
00:00 / 01:00
连播
清屏
智能
倍速
点赞740
00:00 / 04:48
连播
清屏
智能
倍速
点赞11