货币大写转换函数的更新

l6668955

l6668955

2016-01-29 20:16

货币大写转换函数的更新,货币大写转换函数的更新
<%
dim a '要转换成大写的金额
dim atoc '转换之后的值
Dim String1 '如下定义
Dim String2 '如下定义
Dim String3 '从原A值中取出的值
Dim I '循环变量
Dim J 'A的值乘以100的字符串长度
Dim Ch1 '数字的汉语读法
Dim Ch2 '数字位的汉字读法
Dim nZero '用来计算连续的零值是几个

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/asp/)

String1 = "零壹贰叁肆伍陆柒捌玖"
String2 = "万仟佰拾亿仟佰拾万仟佰拾元角分"
nZero = 0

If InStr(1, CStr(a * 100), ".") < 0 Then
err.Raise 5000, , "此函数( AtoC() )只能转换小数点后有两位以内的数!"
End If

J = Len(CStr(a * 100))
String2 = Right(String2, J) '取出对应位数的STRING2的值

For I = 1 To J
String3 = Mid(a * 100, I, 1) '取出需转换的某一位的值

If I < (J - 3) + 1 And I < (J - 7) + 1 And I < (J - 11) + 1 And I <(J - 15) + 1 Then
If String3 = 0 Then
Ch1 = ""
Ch2 = ""
nZero = nZero + 1
ElseIf String3 < 0 And nZero < 0 Then
Ch1 = "零" & Mid(String1, clng(String3) + 1, 1)
Ch2 = Mid(String2, I, 1)
nZero = 0
Else
Ch1 = Mid(String1, clng(String3) + 1, 1)
Ch2 = Mid(String2, I, 1)
nZero = 0
End If
Else '该位是万亿,亿,万,元位等关键位
If String3 < 0 And nZero < 0 Then
Ch1 = "零" & Mid(String1, clng(String3) + 1, 1)
Ch2 = Mid(String2, I, 1)
nZero = 0
ElseIf String3 < 0 And nZero = 0 Then
Ch1 = Mid(String1, clng(String3) + 1, 1)
Ch2 = Mid(String2, I, 1)
nZero = 0
ElseIf String3 = 0 And nZero = 3 Then
Ch1 = ""
Ch2 = ""
nZero = nZero + 1
Else
Ch1 = ""
Ch2 = Mid(String2, I, 1)
nZero = nZero + 1
End If

If I = (J - 11) + 1 Or I = (J - 3) + 1 Then '如果该位是亿位或元位,则必须写上
Ch2 = Mid(String2, I, 1)
End If

End If
AtoC = AtoC & Ch1 & Ch2

If I = J And String3 = 0 Then '最后一位(分)为0时,加上“整”
AtoC = AtoC & "整"
End If

Next
if a=0 then
atoc="零元整"
end if
%

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/asp/)
展开更多 50%)
分享

猜你喜欢

货币大写转换函数的更新

ASP
货币大写转换函数的更新

金额大写转换

编程语言 网络编程
金额大写转换

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

数字转换为中文大写

编程语言 网络编程
数字转换为中文大写

Excel数字转换为中文大写

电脑入门
Excel数字转换为中文大写

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

用Delphi编制金额大写转换程序

Delphi
用Delphi编制金额大写转换程序

UBB 转换函数演示

电脑网络
UBB 转换函数演示

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

PS鼠绘漂亮的虎年主题壁纸

PS鼠绘漂亮的虎年主题壁纸

PS鼠绘梦幻的忆童年插画

PS鼠绘梦幻的忆童年插画
下拉加载更多内容 ↓