钱小写转大写 VB

   Function DaXie(ByVal Num As String) As String         ' 
        If IsNumeric(Num) = False Then
            DaXie = ""
            Exit Function
        End If
        Dim Place As String = "分角元拾佰仟万拾佰仟亿拾佰仟万"
        Dim Dn As String = "壹贰叁肆伍陆柒捌玖"
        Dim D1 As String = "整零元零零零万零零零亿零零零万"
        Dim FuHao As String
        If Num < 0 Then FuHao = "(负)"
        Num = Format(Math.Abs(CDbl(Num)), "0.00") * 100 'Replace(CStr(Format(CDbl(Num), "0.00")), ".", "") 
        If Num > 999999999999999.0 Then
            DaXie = ""
            Exit Function
        End If
        If Num = 0 Then
            DaXie = "零元零分"
            Exit Function
        End If
        Dim NumA As String
        NumA = Trim(Num)
        Dim NumLen As Integer = Len(NumA)
        Dim j As Integer
        Dim NumC As String
        For j = NumLen To 1 Step -1      ' 数字转换过程
            Dim temp As Double = Val(Mid(NumA, NumLen - j + 1, 1))
            If temp <> 0 Then              ' 非零数字转换
                NumC = NumC & Mid(Dn, temp, 1) & Mid(Place, j, 1)
            Else                           ' 数字零的转换
                If Right(NumC, 1) <> "零" Then
                    NumC = NumC & Mid(D1, j, 1)
                Else
                    Select Case j             ' 特殊数位转换
                        Case 1
                            NumC = Left(NumC, Len(NumC) - 1) & Mid(D1, j, 1)
                        Case 3, 11
                            NumC = Left(NumC, Len(NumC) - 1) & Mid(D1, j, 1) & "零"
                        Case 7
                            If Mid(NumC, Len(NumC) - 1, 1) <> "亿" Then
                                NumC = Left(NumC, Len(NumC) - 1) & Mid(D1, j, 1) & "零"
                            End If
                        Case Else
                    End Select
                End If
            End If
        Next
        DaXie = FuHao & Trim(NumC)
    End Function
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值