基于EXCEL的信封打印系统

来源 :电脑知识与技术·经验技巧 | 被引量 : 0次 | 上传用户:xialiaoj
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  年终将近,信封评议又要开始了,单位领导交给监察室小周一千多个信封和一千多份全市各地人员的名单和通讯地址,叫她寄发给他们进行信封评议,这下小周可犯愁了,如此多单位用手工书写的话,不知道要花多少时间,于是打电话向我求救,叫我帮忙,了解大致情况后,我叫她把人员名单和通讯地址的电子文档发过来,通过在工作簿中插入VBA代码,很快就实现信封的批量打印工作,以下简要说明具体的操作的过程。
  
  一、设置信封打印模板
  
  把发过来手EXCEL电子文档重命名为“信封打印系统”,把“名单和地址”工作表重命名为“通讯录”,完成后的内容如图1,在此工作簿中新建一张工作表,并命名为“信封打印”,输入相应的内容,完成后的内容如图2,图中的信封样式是通过扫描仪扫描信封取得的,然后把信封图片插入到“信封打印”工作表中作为背景。
  
  二、插入VBA代码
  
  1、要能够使“通讯录” 工作表中对应信息自动取到“信封打印”工作表中,需要利用“控件工具箱”在“信封打印” 工作表的相应地方添加两个命令按钮,将其Caption属性修改为“全部打印”和“查询打印”,双击“全部打印”按钮,在其Click事件中插入如下代码:
  Private Sub CommandButton1_Click()
  Application.ScreenUpdating = False
  Worksheets("信封打印").Select
  Count = Worksheets("通讯录").[a65536].End(xlUp).Row
  With Worksheets("通讯录")
  For j = 7 To Count
  Range("j1") = .Cells(j, 2): Range("f5") = .Cells(j, 3)
  Range("e8") = .Cells(j, 4): Range("a13") = .Cells(j, 5)
  Worksheets("信封打印").PrintOut copies:=1, collate:=True
  a = j - 1
  b = a Mod 50 = 0
   If b = True Then
   MsgBox "已打印了 " & j - 1 & "个人员的信封,为防止打印机过热,现暂停,如要继续,请按确定。"
  End If:Next j: End With
  Application.ScreenUpdating = True
  MsgBox "一共成功打印了" + Str(Count - 1) + "个人员的信封!正在打印中,请稍候……"
  End Sub
  代码说明:以上代码是把“通讯录”工作表中的数据对应取到“信封打印”工作表中,用循环语句打印出全部人员的信封,为防止打印机过热,每打印50个信封就暂停一下,如继续按确定即可。
  2、上述代码实现了全部人员打印的功能,但在实际操作中,由于计算机、打印机等原因,其中一个或几个人员没能打印出来,需要单独打印,上述方法显然不妥,为了能够实现单独打印,我们需要设置“查询打印”命令按钮,双击“查询打印”按钮,在其Click事件中编写如下代码:
  Private Sub CommandButton2_Click()
  rel = InputBox("请输入要打印人员的序号:", "提示")
  Application.ScreenUpdating = False
  Worksheets("信封打印").Select
  Count = Worksheets("通讯录").[a65536].End(xlUp).Row
  If rel <> "" Then
  With Worksheets("通讯录")
  For j = 2 To Count
  Lookup = Worksheets("通讯录").Cells(j, 1)
  If Val(Lookup) = rel Then
  Range("j1") = .Cells(j, 2): Range("f5") = .Cells(j, 3)
  Range("e8") = .Cells(j, 4): Range("a13") = .Cells(j, 5)
  Worksheets("信封打印").PrintPreview
  Exit Sub: End If: Next j: End With
  MsgBox "没有找到序号为" + rel + "的人员,请确认后重新输入!"
  Else: MsgBox "你输入的序号为空,请确认后重新输入!"
  End If
  Application.ScreenUpdating = True
  End Sub
  代码说明:以上代码中先出现一个序号输入框,输入需要单独打印人员的序号,然后把“通讯录”中此序号人员的信息对应取到“信封打印”工作表中,并打印出此序号人员的信封,如果输入框中未输入序号,或者输入的序号与“通讯录”中的不相符,就不打印。
  3、“全部打印”和“查询打印”两个命令按钮创建完成后的效果如图3所示,另外,为使打印的信封上不出现添加的命令按钮,应分别右击两按钮,选择“设置控件格式”命令,切换到“属性”选项卡,去掉“打印对象”复选框的选中状态(如图4)。
  至此,“信封打印”工作表设计完成,如要打印某个人的信封,只要按“查询打印”命令按钮,如要打印全部人员的信封,只要按“全部打印”命令按钮,领导交办的任务是不是很快就完成了,打印信封的事就交给打印机了。
其他文献
随着公路桥梁相关工程的发展,预应力技术的应用开始越来越受相关人员的重视,其在工程施工中的优势是不可忽视的,但由于实际应用的时间较短,在实际施工过程中还是存在很多技术
针对新闻网站内容管理系统对编辑绩效考核功能不足,而外挂的流量统计分析系统无法获取编辑考核相关数据等情况。通过分析几种不同的方法使外挂的流量分析系统能获取内部编辑
采用隆线涵(D.carinata)为试验生物,研究Cr6+对隆线涵趋光指数的影响,并与LC50急性毒性结果进行了比较.结果表明,水涵的趋光指数(Ip)与铬浓度存在着显著的相关关系(y=0.391-0
农村集体经济亦称“农村集体所有制经济”,是公有制经济的重要组成部分,推行家庭联产承包责任制以来,农村经济社会发生深刻变化,农村集体经济打破了“三级所有、队为基础”的
功能简介:一听音乐盒以国内领先的在线试听网站——一听音乐网的庞大音乐库为后盾,集歌曲搜索、下载、播放、管理、歌词自动配对等众多功能于一身,可以让我们轻松享受音乐带来的
为了提高支持向量机的训练速度,并有效地提高预测结果的精确度,提出了支持向量机支持矩的概念以及相应的支持向量机算法,仿真实验证明,该算法相比传统算法在明显提高了训练速
计算机基础是高职院校一门非常重要的公共基础课,笔者结合多年的教学经验,从不同专业教学任务的选取、教学过程的实施,教学效果的评价等方面提出一些观点和建议。
三江平原土壤不同深度氧化大气浓度CH4和高浓度CH4的速率具有明显的垂直差异.2个非淹水土壤整个剖面都具有氧化大气浓度CH4的潜力,以表层土的速率为最大非淹水的耕作土壤残留
以苯胺溶液为研究对象,考察了超声时间、苯胺溶液浓度、pH值、氧化剂H2O2的浓度等因素对其超声降解率的影响.实验结果表明:超声时间越长,苯胺降解率越大;苯胺初始浓度与其降
用粘土和壤土为材料,研究垃圾填埋场渗滤液灌溉对土壤微生物生物量及酶活性的影响,结果表明:经1年的渗滤液浇灌后,土壤中的各种营养元素与对照相比表现出明显的积累效应;渗滤液浇