您当前的位置:首页 > 会计论文>会计电算化论文

浅谈用Excel设计的支票打印小应用

2015-07-02 14:53 来源:学术参考网 作者:未知
[摘 要] 本文从宏语句设计、单元格属性设置与函数应用、打印及纸张设置等方面详细介绍用excel软件设计的支票打印小应用,只需填入收款人、小写金额、内容3个项目即可实现打印支票的自动化,进行大写金额和大写日期的自动转化,记录已打印支票的各项信息,提供已用支票、未用支票张数,无空余支票提醒,无金额或无收款人时不执行打印等功能。
  [关键词] excel软件;支票打印;应用
    
  2003年7月的《

 2.2 大写日期的自动填写
  我们需要定义一个新函数(大写日期),代码如下:
  public function 中文日期(小写)
  a=replace(replace(replace(replace(replace(replace(replace(replace(replace(replace(小写, 0, "零"), 1, "壹"), 2, "贰"), 3, "叁"), 4, "肆"), 5, "伍"), 6, "陆"), 7, "柒"), 8, "捌"), 9, "玖")
  select case len(小写)
  case 2
  if mid(小写, 2, 1) = 0 then
b = "零" & mid(a, 1, 1) & "拾"
  else
  b = mid(a, 1, 1) & "拾" & mid(a, 2, 1)
  end if
  case 1
  b = "零" & mid(a, 1, 1)
  end select
  中文日期 = b
  end function
  通过上面的代码结合单元格式设置及其他公式就可以实现年月日的大写模式。wWW.133229.coM
  2.3 支票信息管理
  需要设计一个过程来实现支票信息管理,代码如下:
  sub 打印支票()
  sheets("支票打印").select
  账号 = right(sheets("支票打印").cells(2, 14).value, 4)
  select case 账号
  case is = "0309"
  判断 = 1
  case else
  判断 = 0
  end select
  if 判断 = 1 then
  x = 1
  do while not (isempty(sheets("开票信息").cells(x, 1).value))
  x = x + 1
  loop
  x = range(cells(1, 2), cells(x, 2)).count
  sheets("支票打印").select
  ’判断支票本数a,fp为支票信息启始行
  支票类型 = sheets("支票打印").cells(1, 1).value
  支票类型a = sheets("支票打印").cells(13, 1).value
  支票类型b = sheets("支票打印").cells(20, 1).value
  select case 支票类型’判断 number 的值。
  case 支票类型a
  y = 13
  case 支票类型b
  y = 20
  end select
  fp = y
  do while not (isempty(sheets("支票打印").cells(fp, 2).value))
  fp = fp + 1
  loop
  a = range(cells(y, 2), cells(fp - 1, 2)).count
   ’选择符合打印条件的数据,判断是否有备用支票
  if sheets("支票打印").cells(8, 2).value = "" then
  exit sub
  else
  ’n为支票票信息启始行
  日期 = sheets("支票打印").cells(7, 2).value
  姓名 = sheets("支票打印").cells(8, 2).value
  金额 = sheets("支票打印").cells(9, 2).value
  用途 = sheets("支票打印").cells(10, 2).value
  n = y
  do while sheets("支票打印").cells(n, 11).value = 0
  if n - y > a or n = 18 or n = 25 then
  msgbox "没有备用支票"
  ’如果没有发票跳出程序
  exit sub
  else
  n = n + 1
  end if
  loop
  ’输入发票信息
  pjhm1 = val(mid(sheets("支票打印").cells(n, 2).value, 3, 10)) + val(sheets("支票打印").cells(n, 9).value)
  pjhm2 = sheets("支票打印").cells(n, 2).value
  pjhm3 = val(mid(sheets("支票打印").cells(n, 2).value, 3, 10))
  pjhm = replace(pjhm2, pjhm3, pjhm1)
  sheets("支票打印").cells(n, 9).value = val(sheets("支票打印").cells(n, 9).value) + 1
  sheets("开票信息").cells(x, 2).value = 日期
  sheets("开票信息").cells(x, 1).value = 姓名
  sheets("开票信息").cells(x, 4).value = 用途
  sheets("开票信息").cells(x, 3).value = 金额
  sheets("开票信息").cells(x, 5).value = 支票类型
  sheets("开票信息").cells(x, 6).value = pjhm
  activewindow.selectedsheets.printout copies:=1, collate:=true
  sheets("支票打印").cells(8, 2).value = ""
  end if
  x = x + 1
  else
  msgbox "本程序授权:龙泉市机关事务局", , "非法用户!请联系136××××5454"
  application.displayalerts = false
  thisworkbook.close
  application.displayalerts = true
  end if
  end sub
  由于篇幅所限,不再对每个语句作详细的解释。为保证由授权单位使用,在过程还增加了判断是否为合法单位的语句,可以删除该部分语句,不影响使用。
  2.4支票套打
  (1)将工作表1(sheet1)改名为“支票打印”,视图中的显示比例调整为125%。
  (2)以浙江省的支票尺寸设置列宽及行高,其他省份如有不同需比照设置。
  列宽:a(2.13)b(17.25)c(3.13)d(5.5)e(4.13)f(9.25)g(0.69)h(6.75)i(0.62)j(6.63)k(0.69)l(6)m(3.25)n-x(1.25)
  行宽:1(24)2(14.25)3(13.5)4(22.5)5(14.25)6(13.5)7(16. 5)8(14.25)9(14.25)10(15)

以上尺寸除m列用来微调外,其他切勿调整!
  (3)合并单元格:a1-b6;c1-e1;f1-g1;n1-x1;c2-d2;e2-k2;n2-x2;c3-d4;e3-l4;d5-g5(此处的合并是用来填用途的,如果觉得太窄可以向后多合并几个单元格);a11-l11;m11-x11;a12-b12;c12-f12;g12-h12;i12-j12;k12-l12;a13-a18;c13-f13;g13-h13;i13-j13;k13-l13;c14-f14;g14-h14;i14-j14;k14-l14;c15-f15;g15-h15;i15-j15;k15-l15;c16-f16;g16-h16;i16-j16;k16-l16;c17-f17;g17-h17;i17-j17;k17-l17;c18-f18;g18-h18;i18-j18;k18-l18;a19-b19,c19-f19;g19-h19;i19-j19;k19-l19;a20-a25;c20-f20;g20-h20;i20-j20;k20-l20;c21-f21;g21-h21;i21-j21;k21-l21;c22-f22;g22-h22;i22-j22;k22-l22;c23-f23;g23-h23;i23-j23;k23-l23;c24-f24;g24-h24;i24-j24;k24-l24;c25-f25;g25-h25;i25-j25;k25-l25。
(4)单元格填充色及字体颜色:a1-x25填充色选养眼点的(如灰色50%),其中b8-b10是日常使用时唯一需要填写的单元格,可以用其他容易识别的颜色,a1-a10;d2-d4;c5;l1-l2;q3-x3字体颜色选白色,其他单元格默认。
  (5)单元格内容及公式:a1字体24号,黑体,有效性设置为序列,内容(其中逗号以半角英文格式下录入,双引号不需输入)输入:“现金支票,转账支票”;c1、a7填“出票日期”;c2、a8填“收款人”;c3填“人民币(大写)”;c5、a10填“用途”;a9填“金额”;l1填“付款行名称”;l2填“出票人账号”;o3-x3分别填:“仟”、“佰”、“拾”、“万”、“仟”、“佰”、“拾”、“元”、“角”、“分”。b7公式“=now()”,数字格式自定义“yyyymd”,b8如果收款人比较固定可以将有效性设置为序列,b10的用途内容也同理。b9数字格式为“■#,##0.00;■-#,##0.00”即“会计专用,2位小数,货币符号■”,f1公式“=now()”,数字格式自定义“[dbnum2]yyyy”,f2和f3需套用自定义函数,公式为“=中文日期(month(now()))”及“ =中文日期((day(now())))”。e2公式“=b8”,e3需套用自定义函数,公式为“=中文金额(b9)”,黑体16号字加粗缩小字体自适宜较合适,d5公式“=b10”,n1填对应开户行,n2填对应账号(账号尾号需为“0309”,要填其他账号可以将宏语句修改或删除),n4-x4用来提取小写金额对应位置的数字,宋体10号字加粗比较合适,公式如下:
  n4为“=if(len("■"&■b■9*100)>10,mid("■"&■b■9*100,len("■"&■b■9*100)-10,1),"")”
  o4为“=if(len("■"&■b■9*100)>9,mid("■"&■b■9*100,len("■"&■b■9*100)-9,1),"")”
  p4为“=if(len("■"&■b■9*100)>8,mid("■"&■b■9*100,len("■"&■b■9*100)-8,1),"")”
  q4为“=if(len("■"&■b■9*100)>7,mid("■"&■b■9*100,len("■"&■b■9*100)-7,1),"")”
  r4为“=if(len("■"&■b■9*100)>6,mid("■"&■b■9*100,len("■"&■b■9*100)-6,1),"")”
  s4为“=if(len("■"&■b■9*100)>5,mid("■"&■b■9*100,len("■"&■b■9*100)-5,1),"")”
  t4为“=if(len("■"&■b■9*100)>4,mid("■"&■b■9*100,len("■"&■b■9*100)-4,1),"")”
  u4为“=if(len("■"&■b■9*100)>3,mid("■"&■b■9*100,len("■"&■b■9*100)-3,1),"")”
  v4为“=if(len("■"&■b■9*100)>2,mid("■"&■b■9*100,len("■"&■b■9*100)-2,1),"")”
  w4为“=if(len("■"&■b■9*100)>1,mid("■"&■b■9*100,len("■"&■b■9*100)-1,1),"")”
  x4为“=if(len("■"&■b■9*100)>0,mid("■"&■b■9*100,len("■"&■b■9*100),1),"")”
  a11填“支票信息”;m11填“使用说明”;a12填“转账支票启始号”;a19填“现金支票启始号”;c12、c19填“支票结束号”;g12、g19填“份数”;i12、i19填“已用”;k12、k19填“未用”;a13填“转账支票”;a19填“现金支票”;b13-b18;c13-c18填入每本转账支票的开始号码和结束号码(号码前加符号“№”,只填号码中阿拉伯数字);b20-b25;c20-c25填入每本现金支票的开始号码和结束号码;g13公式为“=midb(c13,3,10)-midb(b13,3,10)+1”;g14-18、g20-25公式类推;k13公式为“=if(type(g13-i13)=1,(g13-i13),0)”; k14-k18、k20-k25公式类推。以上所有单元格无说明时采用左对齐,为防止误删,将有公式的单元格设置为保护锁定和隐藏。
  (6)建立一个按钮,打开“视图”—工具栏-控件工具箱-命令按钮,将按钮大小覆盖c6-x10,名称为“务必点击此处打印”,字体及颜色要醒目,指定宏为原来设置好的“打印支票”,将宏格式设为:保护——锁定,属性——大小位置随单元格变化,打印对象为空。
  (7)工作表2(sheet2)改名为“开票信息”,a1-f1分别填:“收款人”、“出票日期”、“金额”、“用途”、“支票类型”、“支票号码”。
  (8)打印纸张的设置:点击桌面“开始”按钮—设置—控制面板,双击“打印机和传真”,在打开的窗口中空白处按右键,选择“服务器属性”,创建一个新格式纸张:尺寸为8cm×22.6cm(有的打印机可能要设置为22.6cm×8cm),然后回到工作表1 中进行打印预览,在页面设置中选择“选项”,再次创建和刚才同尺寸的纸张格式,回到页面设置选择创建的纸张,缩放比例用97%,方向需要根据不同打印机来选择,注意打印设置—工作表设置—按草稿打印选上,其他项都不选。
  (9)测试阶段,将支票多复印几张,剪下(越精确越好),根据不同打印机横向或纵向放入进行打印,测试时无需通过设置的命令按钮“务必点击此处打印”来打印,根据误差来调整页面设置中的左边距和上边距,针式打印机还需调整进纸位置。还可以通过调整m列宽度来微调,直到完全吻合后,对宏进行密码保护,对工作表进行保护,对文件保存时最好也加上密码另存,宏的安全性选“中”,使用时选同意启动宏。
  
  3小结
  
  实际使用时,我们只要填b8(收款人),b9(小写金额),b10(用途),确定无误后点击按钮(一定要通过按钮)就可以了。收款人为空程序不会打印,无支票程序会提示,所有开票信息程序都会记录,便于查找。
  软件只考虑了同一银行一个账户的情况,若有多个账户在宏语句中要稍作修改。
  图1为工作表“支票打印”截图,图2为打印预览效果图。
相关文章
学术参考网 · 手机版
https://m.lw881.com/
首页