vb字符串比较是否相等 用VB把数字转成中文字符串
用VB把数字转成中文字符串
根据数字的读法源码天空 写了一个把数字转成中文字符串的程序
参数一为数字
参数二为是不是反回人民币大写
参数三为是不是直接读数字 否则带有十百等单位
参数四为设置小数点后面的位数 默认为
使用方法是
t=GetChinaNum( ) 返回 二千零五点零零零四三六
t=GetChinaNum( True ) 返回 贰仟零伍元肆角肆分
t=GetChinaNum( True ) 返加 二零零五点四三六
下面是程序代码
Function GetChinaNum(otherNum As Double Optional isRMB As Boolean Optional numOption As Boolean Optional dotNum As Integer) As String
On Error Resume Next
num = Trim(Str(Int(otherNum)))
If isRMB Then
numwei = 拾佰仟万拾佰仟亿拾佰仟
numshu = 零壹贰三肆伍陆柒捌玖拾
Else
numwei = 十百千万十百千亿十百千
numshu = 零一二三四五六七八九十
End If
If otherNum < And otherNum >= Then
num = Right(num )
GetChinaNum = Left(numwei )
End If
For i = To Len(num)
bstr = Mid(num i )
If numOption Then
GetChinaNum = GetChinaNum + Mid(numshu Val(bstr) + )
Else
GetChinaNum = GetChinaNum + Mid(numshu Val(bstr) + )
If bstr = Then
If Mid(numwei Len(num) i ) = 万 Or Mid(numwei Len(num) i ) = 亿 Then
Do While Right(GetChinaNum ) = 零
GetChinaNum = Left(GetChinaNum Len(GetChinaNum) )
Loop
GetChinaNum = GetChinaNum + Mid(numwei Len(num) i )
End If
Else
GetChinaNum = GetChinaNum + Mid(numwei Len(num) i )
End If
GetChinaNum = Replace(GetChinaNum 零零 零 )
End If
Next i
If numOption = False Then
Do While Right(GetChinaNum ) = 零
GetChinaNum = Left(GetChinaNum Len(GetChinaNum) )
Loop

End If
If isRMB Then
numrmb = 元角分
GetChinaNum = GetChinaNum + Mid(numrmb )
If Val(num) <> otherNum Then
num = Trim(Str(Round(otherNum Val(num) )))
For i = To Len(num)
bstr = Mid(num i )
GetChinaNum = GetChinaNum + Mid(numshu Val(bstr) + ) + Mid(numrmb i )
Next i
Else
GetChinaNum = GetChinaNum + 整
End If
Else
If Val(num) <> otherNum Then
If dotNum = Then dotNum =
num = Trim(CStr(Round(otherNum Val(num) dotNum)))
If GetChinaNum = Then GetChinaNum = 零
GetChinaNum = GetChinaNum + 点
For i = To Len(num)
bstr = Mid(num i )
GetChinaNum = GetChinaNum + Mid(numshu Val(bstr) + )
Next i
End If
End If
lishixinzhi/Article/program/net/201311/12736相关文章
- 误差传函怎么求 如何把函式传进来的字串引数赋值给另一个字元阵列
- C语言将数字字符转化成数字 C语言如何实现整形转换成字符型然后赋值到字符数组
- c语言题目 帮忙看一下这个c语言问题:输入一个十进制整数,将其转换成十六进制数,并输出转换后的结果。
- c语言整除与模除 VB编程 求出能被三整除且至少有一位数字是8的所有三位正整数及这些数的个数
- 查找字符串中指定字符 excel中 如何查找字符所在行的某个单元格的值
- vb算术运算符 在vb中什么函式可以计算一个数组的下标
- 撷取的反义词 用java 编写一个撷取字串的函式,输入为一个字串和位元组数,输出为按位元组撷取的字串。但是要保
- 宣告 在VB中,阵列能否用变数宣告?阵列下标为变数时,阵列元素能否参加逻辑运算?
- c语言删去字符串特定字符 在ASP.NET下实现数字和字符相混合的验证码
- C语言输入一个字符串再逆序 java编写程序,读入用户输入的一个字符串,然后确定并输出每一个小写元音字母(a,e,i,o,u)在
爱学记

微信收款码
支付宝收款码