转换大写金额
<table border=0" width="100%" id="table8">
<tr>
<td width="50%">
<p align="center">价格总计:RMB<%=formatnumber(totalprice,2)%></td>
<td width="50%">
<p align="left">大写:</td>
</tr>
</table>
------------------------------------------------------------
我想把左边的价格总计的数字,转换成大写的金额,请高手帮忙,谢谢.代码如上:
------解决方案--------------------
<%
totalprice = "1232323.31232"
Function rmb(num)
num = FormatNumber(num, 2)
Dim numList
Dim rmbList
Dim numLen
Dim numChar
Dim numstr
Dim n
Dim n1, n2
Dim hz
numList = "零壹贰叁肆伍陆柒捌玖"
rmbList = "分角元拾佰仟万拾佰仟亿拾佰仟万"
If num > 9999999999999.99 Then
rmb = "超出范围的人民币值"
Exit Function
End If
numstr = CStr(num * 100)
numLen = Len(numstr)
n = 1
Do While n <= numLen
numChar = CInt(Mid(numstr, n, 1))
n1 = Mid(numList, numChar + 1, 1)
n2 = Mid(rmbList, numLen - n + 1, 1)
If Not n1 = "零" Then
hz = hz + CStr(n1) + CStr(n2)
Else
If n2 = "亿" Or n2 = "万" Or n2 = "元" Or n1 = "零" Then
Do While Right(hz, 1) = "零"
hz = Left(hz, Len(hz) - 1)
Loop
End If
If (n2 = "亿" Or (n2 = "万" And Right(hz, 1) <> "亿") Or n2 = "元") Then
hz = hz + CStr(n2)
Else
If Left(Right(hz, 2), 1) = "零" Or Right(hz, 1) <> "亿" Then
hz = hz + n1
End If
End If
End If
n = n + 1
Loop
Do While Right(hz, 1) = "零"
hz = Left(hz, Len(hz) - 1)
Loop
If Right(hz, 1) = "元" Then
hz = hz + "整"
End If
rmb = hz
End Function
response.write rmb(totalprice)
%>
------解决方案--------------------'**********************************************************************************
'函数名称:Money()
'函数功能:人民币小写转大写
'函数返回值:Str
'作者:蒋三德
'作用范围:所有
'**********************************************************************************
Public Function Money(rmb)
cRmb1 = "仟佰拾万仟佰拾亿仟佰拾万仟佰拾元角分"
cRmb2 = "壹贰叁肆伍陆柒捌玖"
cRmb = TRIM(CSTR(ROUND(Rmb,2)*100))
If right(crmb,1)="0" Then
cReChsRmb = "整"
nZero = 0
Else
cReChsRmb = ""
nZero = 1
End If
FOR i = LEN(cRmb) To 1 Step -1
cNum = Mid(cRmb,i,1)
IF Not cNum="0" Then
cReChsRmb = Mid(cRmb2,INT(cInt(Mid(cRmb,i,1))),1) + Mid(cRmb1,I-LEN(cRmb)+18,1) + cReChsRmb
nZero = 1
Else
cChsNum2 = Mid(cRmb1,I-LEN(cRmb)+18,1)
If InStr(cChsNum2,"亿") >0 And InStr(cChsNum2,"万") >0 And InStr(cChsNum2,"元") >0 Then
If cChsNum2 = "亿" and LEFT(cReChsRmb,2) = "万" Then
cReChsRmb = cChsNum2 + SUBSTRC(cReChsRmb,2)
Else
cReChsRmb= cChsNum2 + cReChsRmb
End If
Else
If nZero=1 Then
cReChsRmb = "零" + cReChsRmb
Else
cReChsRmb = cReChsRmb
End If
End If
nZero = 0
End If
Next
If InStr(cReChsRmb,"元") <= 0 Then
cReChsRmb =