Rss & SiteMap

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

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

标题:piao据套打中金额大写套打好麻烦,有没简单点的?

1楼
菜鸟foxtable 发表于:2009/2/3 21:27:00
大家可以看到金额大写栏,原本是有万仟佰拾元角分这些字的.
示例中提供了大写转换

CUMoney

将阿拉伯数字转换为中文货币格式。

语法

CUMoney(Value)

Value:要转换的阿拉伯数字。

例如:

Dim Currency as String
Currency = CUMoney(
12345.12
)
Output.Show(Currency)

输出为:壹万贰千叁佰肆拾伍圆壹角贰分


我用的笨办法,把合计小写金额每一位数设定一个对应列,然后进行套打.有没简单点的办法?


  合计   万  仟    佰    拾    元    角    分           
   12345.12  壹     贰     叁   肆     伍    壹    贰        


图片点击可在新窗口打开查看此主题相关图片如下:住院fa piao.jpg
图片点击可在新窗口打开查看
2楼
狐狸爸爸 发表于:2009/2/3 21:56:00

CUNumber加GetDigit,两个函数轻松搞定。
没有必要单独的列,套打的时候再计算即可。

3楼
菜鸟foxtable 发表于:2009/2/4 5:58:00

老爹,m变量大写前面那个¥符号不会搞...

感觉上可以利用Length函数..

dim m as double = 12345.67
output.show(CUNumber(GetDigit(m,0)))

[此贴子已经被作者于2009-2-4 8:22:06编辑过]
4楼
狐狸爸爸 发表于:2009/2/4 15:20:00
dim m as double = 12345.67
Dim i As String = GetDigit(m,5)
If Char.IsNumber(i) Then
  Output.Show(CuNumber(i))
Else
  Output.Show(i)
End If
5楼
菜鸟foxtable 发表于:2009/2/5 0:44:00
以下是引用狐狸爸爸在2009-2-4 15:20:00的发言:
dim m as double = 12345.67
Dim i As String = GetDigit(m,5)
If Char.IsNumber(i) Then
  Output.Show(CuNumber(i))
Else
  Output.Show(i)
End If

老爹的方法只能针对固定位数的数值.

6楼
狐狸爸爸 发表于:2009/2/5 0:47:00
我提供一个思路而已,上面的代码完全用于套打再方便不过了。
图片点击可在新窗口打开查看
7楼
菜鸟foxtable 发表于:2009/2/5 9:39:00
图片点击可在新窗口打开查看老爹,俺明白,还是要用Length函数啊.
8楼
菜鸟foxtable 发表于:2009/2/5 13:16:00
这样就能保证任意位数都能在前面加上¥符号了.

dim m as double = 12345.67
dim r as string = format(m,"0.00")
dim i As integer = r.Length-3
r = GetDigit(r,i)
Output.Show(r & m)
[此贴子已经被作者于2009-2-5 13:19:13编辑过]
共8 条记录, 每页显示 10 条, 页签: [1]

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

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