浅谈用Excel设计的支票打印小应用_第1页
浅谈用Excel设计的支票打印小应用_第2页
浅谈用Excel设计的支票打印小应用_第3页
浅谈用Excel设计的支票打印小应用_第4页
浅谈用Excel设计的支票打印小应用_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

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

Excel软件;支票打印;应用

2003年7月的《中国会计电算化》杂志上曾刊登过一篇笔者关于打印票据的文章,后在实践中笔者对Excel的应用有了更深的理解和认识,现将新的票据打印应用进行重新整理。

原来的应用主要是使用Word的邮件合并功能,后来在使用中感觉还是比较麻烦,需要用到Word和Excel软件。新应用放弃了邮件合并功能,只用到Excel软件。

1设计思路

支票打印需要输入的项目为:收款人、日期、款项内容、开户银行及账号、大小写金额。

首先,希望只需要输入收款人、款项内容、小写金额就可以完成所有填开项目。如果收款人和款项内容是比较固定的,最好通过下拉框选择输入。大写日期和大写金额能自动填写。

其次,希望系统实现对支票信息的管理,即能记录每一张支票的开票时间、收款人、款项内容、金额等信息,同时能提供已开支票张数、未开支票张数,无空余支票时能提醒购买新支票。

此外,软件应该能在无金额或无收款人时不执行打印。

2设计过程

根据上述思路,需要充分利用Excel的各项功能,特别是宏的设计。

大写金额的自动填写

默认金额最大为玖仟玖佰玖拾玖万玖仟玖佰玖拾玖元玖角玖分。在此需要自定义一个函数,打开Excel软件,在工具下选择“宏”,打开VB编辑器,插入一个新模块,在其中建立一个函数,其代码

PublicFunction中文金额

A=Replace,1,"壹"),2,"贰"),3,"叁"),4,"肆"),5,"伍"),6,"陆"),7,"柒"),8,"捌"),9,"玖")

SelectCaseLen

Case10

B=Mid&"仟"&Mid&"佰"&Mid&"拾"&Mid&"万"&Mid&"仟"&Mid&"佰"&Mid&"拾"&Mid&"元"&Mid&"角"&Mid&"分"

Case9

B=Mid&"佰"&Mid&"拾"&Mid&"万"&Mid&"仟"&Mid&"佰"&Mid&"拾"&Mid&"元"&Mid&"角"&Mid&"分"

Case8

B=Mid&"拾"&Mid&"万"&Mid&"仟"&Mid&"佰"&Mid&"拾"&Mid&"元"&Mid&"角"&Mid&"分"

Case7

B=Mid&"万"&Mid&"仟"&Mid&"佰"&Mid&"拾"&Mid&"元"&Mid&"角"&Mid&"分"

Case6

B=Mid&"仟"&Mid&"佰"&Mid&"拾"&Mid&"元"&Mid&"角"&Mid&"分"

Case5

B=Mid&"佰"&Mid&"拾"&Mid&"元"&Mid&"角"&Mid&"分"

Case4

B=Mid&"拾"&Mid&"元"&Mid&"角"&Mid&"分"

Case3

B=Mid&"元"&Mid&"角"&Mid&"分"

Case2

B=Mid&"角"&Mid&"分"

Case1

B=Mid&"分"

EndSelect

中文金额=B

ForC=4To1Step-1’建立4次循环。

中文金额=Replace,"零仟","零"),"零佰","零"),"零拾","零"),"零角零分","整"),"零角","零"),"零分","整"),"零零","零"),"零元","元")

NextC

EndFunction

上面的代码通过不断反复使用Replace命令将小写金额的数字进行替换,最后转换为大写金额。

大写日期的自动填写

我们需要定义一个新函数,代码

PublicFunction中文日期

A=Replace,1,"壹"),2,"贰"),3,"叁"),4,"肆"),5,"伍"),6,"陆"),7,"柒"),8,"捌"),9,"玖")

SelectCaseLen

Case2

IfMid=0Then

B="零"&Mid&"拾"

Else

B=Mid&"拾"&Mid

EndIf

Case1

B="零"&Mid

EndSelect

中文日期=B

EndFunction

通过上面的代码结合单元格式设置及其他公式就可以实现年月日的大写模式。

支票信息管理

需要设计一个过程来实现支票信息管理,代码

Sub打印支票

Sheets.Select

账号=Right.Cells.Value,4)

SelectCase账号

CaseIs="0309"

判断=1

CaseElse

判断=0

EndSelect

If判断=1Then

x=1

DoWhileNot.Cells.Value))

x=x+1

Loop

x=Range,Cells).Count

Sheets.Select

’判断支票本数a,fp为支票信息启始行

支票类型=Sheets.Cells.Value

支票类型A=Sheets.Cells.Value

支票类型B=Sheets.Cells.Value

SelectCase支票类型’判断Number的值。

Case支票类型A

Y=13

Case支票类型B

Y=20

EndSelect

fp=Y

DoWhileNot.Cells.Value))

fp=fp+1

Loop

A=Range,Cells).Count

’选择符合打印条件的数据,判断是否有备用支票

IfSheets.Cells.Value=""Then

ExitSub

Else

’n为支票票信息启始行

日期=Sheets.Cells.Value

姓名=Sheets.Cells.Value

金额=Sheets.Cells.Value

用途=Sheets.Cells.Value

n=Y

DoWhileSheets.Cells.Value=0

Ifn-Y>AOrn=18Orn=25Then

MsgBox"没有备用支票"

’如果没有发票跳出程序

ExitSub

Else

n=n+1

EndIf

Loop

’输入发票信息

pjhm1=Val.Cells.Value,3,10))+Val.Cells.Value)

pjhm2=Sheets.Cells.Value

pjhm3=Val.Cells.Value,3,10))

pjhm=Replace

Sheets.Cells.Value=Val.Cells.Value)+1

Sheets.Cells.Value=日期

Sheets.Cells.Value=姓名

Sheets.Cells.Value=用途

Sheets.Cells.Value=金额

Sheets.Cells.Value=支票类型

Sheets.Cells.Value=pjhm

ActiveWindow.SelectedSheets.PrintOutCopies:=1,Collate:=True

Sheets.Cells.Value=""

EndIf

x=x+1

Else

MsgBox"本程序授权:龙泉市机关事务局",,"非法用户!请联系136××××5454"

Application.DisplayAlerts=False

ThisWorkbook.Close

Application.DisplayAlerts=True

EndIf

EndSub

由于篇幅所限,不再对每个语句作详细的解释。为保证由授权单位使用,在过程还增加了判断是否为合法单位的语句,可以删除该部分语句,不影响使用。

支票套打

将工作表1改名为“支票打印”,视图中的显示比例调整为125%。

以浙江省的支票尺寸设置列宽及行高,其他省份如有不同需比照设置。

列宽:ABCDEFGHIJKLMN-X

行宽:12345678910

以上尺寸除M列用来微调外,其他切勿调整!

合并单元格: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。

单元格填充色及字体颜色:A1-X25填充色选养眼点的,其中B8-B10是日常使用时唯一需要填写的单元格,可以用其他容易识别的颜色,A1-A10;D2-D4;C5;L1-L2;Q3-X3字体颜色选白色,其他单元格默认。

单元格内容及公式: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需套用自定义函数,公式为“=中文日期))”及“=中文日期)))”。E2公式“=B8”,E3需套用自定义函数,公式为“=中文金额”,黑体16号字加粗缩小字体自适宜较合适,D5公式“=B10”,N1填对应开户行,N2填对应账号,N4-X4用来提取小写金额对应位置的数字,宋体10号字加粗比较合适,公式

N4为“=IF>10,MID-10,1),"")”

O4为“=IF>9,MID-9,1),"")”

P4为“=IF>8,MID-8,1),"")”

Q4为“=IF>7,MID-7,1),"")”

R4为“=IF>6,MID-6,1),"")”

S4为“=IF>5,MID-5,1),"")”

T4为“=IF>4,MID-4,1),"")”

U4为“=IF>3,MID-3,1),"")”

V4为“=IF>2,MID-2,1),"")”

W4为“=IF>1,MID-1,1),"")”

X4为“=IF>0,MID,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-MIDB+1”;G14-18、G20-25公式类推;K13公式为“=IF=1,,0)”;K14-K18、K20-K25公式类推。以上所有单元格无说明时采用左对齐,为防止误删,将有公式的单元格设置为保护锁定和隐藏。

建立一个按钮,打开“视图”—工具栏-控件工具箱-命令按钮,将按钮大小覆盖C6-X10,名称为“务必点击此处打印”,字体及颜色要醒目,指定宏为原来设置好的“打印

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论