用Access2007解决支票打印的日期大写问题

  次阅读 作者:智能小宝 来源:互联网 2016-01-28 13:29 我要评论(0)

财务人员都知道,转账支票的出票日期是需要大写的。如果用手写,当然可以直接填写成大写,但如果设计专用软件进行套打,每张支票都在固定位置填写大写会很麻烦,也没有必要。这里仅以access2007设计为例,给这方面的爱好者提供一个思路。

一、先设计一个Access2007表,加入转账支票可能需要的字段,比如付款人名称、付款人账号、收款人名称、付款金额、出票日期等等。其中的“出票日期”设成“日期”类型,默认值可以设成“date()”(即当天日期)。表设计好后命名保存备用。

二、新建模块,并输入以下内容

Public Function Udate(mDATE As Date, mYMD As Integer) As String

'用法Udate(#1/2/2005#, i)

'i=1 贰零零伍

'i=2 零壹

'i=3 零贰

'i=0 贰零零伍年零壹月零贰日

Dim i As Integer, iD As Integer

Dim strDT(2) As String, strS As String

Dim strD(0 To 9) As String * 1

strD(0) = "零"

strD(1) = "壹"

strD(2) = "贰"

strD(3) = "叁"

strD(4) = "肆"

strD(5) = "伍"

strD(6) = "陆"

strD(7) = "柒"

strD(8) = "捌"

strD(9) = "玖"

For i = mYMD + (mYMD <> 0) To mYMD + (mYMD <> 0) - (mYMD = 0) * 2

If i = 0 Then

iD = Year(mDATE)

strDT(i) = strD(iD1000) & strD((iD100) Mod 10) & strD((iD10) Mod 10) & strD(iD Mod 10)

Else

If i = 1 Then iD = Month(mDATE) Else iD = Day(mDATE)

If iD > 9 Then strS = "拾" Else strS = ""

strDT(i) = strD(iD10) & strS & strD(iD Mod 10)

If iD > 9 And iD Mod 10 = 0 Then strDT(i) = "零" & Left$(strDT(i), 2)

End If

Next

Select Case mYMD

Case 0

Udate = strDT(0) & "年" & strDT(1) & "月" & strDT(2) & "日"

Case Else

Udate = strDT(mYMD - 1)

End Select

End Function

三、以第一步建的表为基础新建一个查询,加入必要的字段。另在一个空白字段写表达式:“大写: Udate([出票日期],0)”。保存这个查询。

四、在原表中录入将要打印的支票信息,“出票日期”字段必须录入正确的日期。

五、运行查询,就会看到有一个大写的日期字段。有了这个结果,无论设计窗体,还是设计报表,都可以自由引用了。

本站文章信息来源于网络以及网友投稿,本站只负责对文章进行整理、排版、编辑,是出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性。如果您有什么意见或建议,请联系QQ28-1688-302!

人工智能实验室
相关文章相关文章
  • 英国研发“杀生”机器人 通过生命体获取能量

    英国研发“杀生”机器人 通过生命体获取能量

  • 韩春雨称已能重复实验结果 近期将有消息公布

    韩春雨称已能重复实验结果 近期将有消息公布

  • 未来两年人工智能要怎么走?看这篇就够了

    未来两年人工智能要怎么走?看这篇就够了

  • 无人驾驶汽车如何改变城市生活?听听他们怎么说

    无人驾驶汽车如何改变城市生活?听听他们怎么说

网友点评网友点评
阅读推荐阅读推荐

据国外媒体报道,在过去两年内,聊天机器人(chatbot)、人工智能以及机器学习的研发和采用取得了巨大进展。许多初创公司正利用人工智能和...

霍金 视觉中国 图 英国著名物理学家霍金(Stephen Hawking)再次就人工智能(AI)发声,他认为:对于人类来说,强大AI的出现可能是最美妙的...

文|郑娟娟 今年,人工智能(AI) 60岁了。在AI60岁的时候,笔者想要介绍一下AI100,一个刚刚2岁的研究项目,但它的预设寿命是100年,甚至更长...

AlphaGo与李世石的人机大战,为大众迅速普及了人工智能的概念。 但对谷歌而言,除了下围棋,现在的人工智能进展到哪一步了?未来,人工智能...