Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共17 条记录, 每页显示 10 条, 页签: [1] [2]
[浏览完整版]

标题:[讨论]支piao格式问题

1楼
hzcaqjf 发表于:2011/7/19 17:25:00
Output.Show(CCNumber(2011)) 执行后显示为"贰仟零壹拾壹",这好象不符合支piao格式.支piao格式应显示为"贰零壹壹",请问有别的方法吗?
2楼
kylin 发表于:2011/7/19 17:31:00

这样要求的函数得自己写了,呵呵

 

只需要简单一一对应就可以,吃完饭后我试写个代码

3楼
狐狸爸爸 发表于:2011/7/19 17:33:00

也可以看看这个:

 

http://www.foxtable.net/help/topics/1608.htm

 

4楼
hzcaqjf 发表于:2011/7/19 17:41:00

虽然还是不懂,但对狐爸的回复速度之快还是感到热心和惊讶.在此多谢!

2楼的Kylin也一并谢了.

[此贴子已经被作者于2011-7-19 17:44:43编辑过]
5楼
kylin 发表于:2011/7/19 18:23:00

在DataColChanged事件中写入代码:

If e.DataCol.Name = "金额" Then
    If e.NewValue >0 Then
        Dim tx,tx1 As String
        Dim s As  String = Format( math.round(e.DataRow("金额")*100,0),"00000000000")
        For i As Integer =0 To 10
            Select  Case s.SubString(i,1)
                Case "0"
                    tx = "零"
                Case "1"
                    tx = "壹"
                Case "2"
                    tx = "贰"
                Case "3"
                    tx = "叁"
                Case "4"
                    tx = "肆"
                Case "5"
                    tx = "伍"
                Case "6"
                    tx = "陆"
                Case "7"
                    tx = "柒"
                Case "8"
                    tx = "捌"
                Case "9"
                    tx = "玖"
            End Select
            tx1 = tx1 & tx
        Next
        e.DataRow("大写金额") = tx1
    End If
End If

[此贴子已经被作者于2011-7-19 18:24:47编辑过]
6楼
hzcaqjf 发表于:2011/7/19 21:24:00

   支piao上的年份大写如"2011"年,只能显示为"贰零壹壹"年,不能显示为"零零零零零贰零壹壹零零"年.就象易表的"CUNum"函数.不过,"Kylin"您的代码给了我一点提示,谢谢您!

  最好希望狐爸提供一个属于狐表的"CUNum"函数!

7楼
hzcaqjf 发表于:2011/7/19 21:47:00

易表:

CUNUM

将数字转换为大写中文格式。例如:CUNUM(123)="壹贰叁"

CUNUMBER

将数字转换为大写中文格式。例如:CUNUMBER(123)="壹佰贰拾叁"

狐表:

CCNumber(123) = "壹佰贰拾叁"

CUNumber(123) = "壹佰贰拾叁"

"CCnumber"与"CUnumber" 两函数有重复嫌疑.

8楼
mr725 发表于:2011/7/19 22:54:00

Dim DateStr As String
DateStr = CUDate(#12/31/2008#)
Output.Show(DateStr)

 

上述代码的输出为:贰零零捌年拾贰月叁拾壹日

9楼
mr725 发表于:2011/7/20 0:10:00

如果是纯数字,可以自己写代码:

 

Dim sz As String = "零,壹,贰,叁,肆,伍,陆,柒,捌,玖"
Dim nm As String = "0,1,2,3,4,5,6,7,8,9"
Dim db As Double = 2011
Dim ss As String
For i As Integer = 1 To str(db).length-1
    For ii As Integer = 0 To nm.split(",").length -1
        If str(db)(i) = nm.split(",")(ii)
            ss = ss & sz.split(",")(ii)
        End If
    Next
Next
output.show("数字 2011 转换成大写:" & ss)     '结果等于 : 贰零壹壹

[此贴子已经被作者于2011-7-20 0:10:30编辑过]
10楼
kylin 发表于:2011/7/20 7:56:00
这个代码不错,学习了,呵呵
共17 条记录, 每页显示 10 条, 页签: [1] [2]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .02344 s, 2 queries.