没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
Private Sub Command1_Click()
If T(0).Text <> "" Then
T(1).Text = NumToWord(T(0).Text)
If T(1).Text <> "" Then
T(1).SelStart = 0
T(1).SelLength = Len(T(1).Text)
T(1).SetFocus
End If
End If
End Sub
'|数字转换为英文表示
Public Function NumToWord(ByVal numstr As Variant) As String
On Error GoTo er:
Dim s As String
Dim ls As Boolean
'|如果数字的第三位为0就为真,否则为假.
If Len(Trim(numstr)) > 3 Then
'|如果数字的位数大于3位就判断第3位的数字是否为0
If Mid(Trim(numstr), Len(Trim(numstr)) - 2, 1) = "0" Then
ls = True
Else
ls = False
End If
End If
DoEvents
Dim arrstr
arrstr = Split(numstr, ".")
numstr = arrstr(0)
If UBound(arrstr) = 1 Then
If T(0).Text <> "" Then
T(1).Text = NumToWord(T(0).Text)
If T(1).Text <> "" Then
T(1).SelStart = 0
T(1).SelLength = Len(T(1).Text)
T(1).SetFocus
End If
End If
End Sub
'|数字转换为英文表示
Public Function NumToWord(ByVal numstr As Variant) As String
On Error GoTo er:
Dim s As String
Dim ls As Boolean
'|如果数字的第三位为0就为真,否则为假.
If Len(Trim(numstr)) > 3 Then
'|如果数字的位数大于3位就判断第3位的数字是否为0
If Mid(Trim(numstr), Len(Trim(numstr)) - 2, 1) = "0" Then
ls = True
Else
ls = False
End If
End If
DoEvents
Dim arrstr
arrstr = Split(numstr, ".")
numstr = arrstr(0)
If UBound(arrstr) = 1 Then
s = arrstr(1)
s = Replace(s, "1", " one")
s = Replace(s, "2", " two")
s = Replace(s, "3", " three")
s = Replace(s, "4", " four")
s = Replace(s, "5", " five")
s = Replace(s, "6", " six")
s = Replace(s, "7", " seven")
s = Replace(s, "8", " eight")
s = Replace(s, "9", " nine")
s = Replace(s, "0", " zero")
s = " point " + s
ElseIf UBound(arrstr) > 1 Then
NumToWord = ""
MsgBox "小数点多于一个"
Exit Function
ElseIf UBound(arrstr) = 0 Then
s = ""
End If
DoEvents
Dim tempstr As String
Dim newstr As String
numstr = CDec(numstr)
If numstr = 0 Then
NumToWord = "zero "
Exit Function
End If
If numstr > 10 ^ 24 Then
NumToWord = "Too big"
Exit Function
s = Replace(s, "1", " one")
s = Replace(s, "2", " two")
s = Replace(s, "3", " three")
s = Replace(s, "4", " four")
s = Replace(s, "5", " five")
s = Replace(s, "6", " six")
s = Replace(s, "7", " seven")
s = Replace(s, "8", " eight")
s = Replace(s, "9", " nine")
s = Replace(s, "0", " zero")
s = " point " + s
ElseIf UBound(arrstr) > 1 Then
NumToWord = ""
MsgBox "小数点多于一个"
Exit Function
ElseIf UBound(arrstr) = 0 Then
s = ""
End If
DoEvents
Dim tempstr As String
Dim newstr As String
numstr = CDec(numstr)
If numstr = 0 Then
NumToWord = "zero "
Exit Function
End If
If numstr > 10 ^ 24 Then
NumToWord = "Too big"
Exit Function
剩余6页未读,继续阅读
资源评论
岭神
- 粉丝: 0
- 资源: 8
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功