快速业务通道

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

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-03-18

财务人员都知道,转账支票的出票日期是需要大写的。如果用手写,当然可以直接填写成大写,但如果设计专用软件进行套打,每张支票都在固定位置填写大写会很麻烦,也没有必要。这里仅以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(iD \ 1000) & strD((iD \ 100) Mod 10) & strD((iD \ 10) 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(iD \ 10) & 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
  

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号