兼容几种特殊的大写形式 ¥-陆 万 零 仟 零 佰 陆 拾 伍 圆 贰 角 零 分整 玖佰兆零伍亿零柒十万零陆拾伍圆整 负9佰兆零5亿另7拾万 X6拾圆3角2分 九亿五千6百二十 三圆三角二分 像上面这样的 只要不是错的太离谱 都可以转换成数字 转换范围 正负 1000兆 (1000万亿)以下 够用了吧 Function DxToN(ss) For i% = 1 To 9 ss = Replace(ss, Mid("壹贰叁肆伍陆柒捌玖", i, 1), i) ss = Replace(ss, Mid("一二三四五六七八九", i, 1), i) Next For i% = Len(ss) To 1 Step -1 s$ = Mid$(ss, i, 1) x% = InStr("分角圆拾佰仟万拾佰仟亿拾佰仟兆", s) If x = 0 Then x% = InStr("分毛元十百千萬十百千億十百千兆", s) If x Then j% = IIf(j% < x, x, ((j - 3) \ 4) * 4 + x) If Val(s) Then m# = m# + (s & String(j - 1, "0")) / 100 Next DxToN = Format(m, "0.00") If InStr(ss, "-") Or InStr(ss, "负") Then DxToN = "-" & DxToN End Function 欢迎测试
[此贴子已经被作者于2008-7-28 22:51:27编辑过] |