微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

VB实现数字到中文金额的转换函数

Private Function NMoneyToSMoney ( NMoney As Variant )   As String
      If IsNumeric ( NMoney )     =   False Then
            NMoneyToSMoney   =   "不是数字类型"
            Exit Function
      End If
      Dim BasicDWString As String,BasicDW (   )   As String
      Dim MoneyDWString As String,MoneyDW (   )   As String
      Dim MoneyStr As String,ReturnStr As String,TempStr As String
      BasicDWString   =   "分,角,圆,拾,佰,仟,万,亿,万亿,兆,亿"
      MoneyDWString   =   "零,壹,贰,叁,肆,伍,陆,柒,捌,玖"
      BasicDW   =   Split ( BasicDWString,"," )  
      MoneyDW   =   Split ( MoneyDWString," )  
      MoneyStr   =   Format ( NMoney,"0.00" )  
      MoneyStr   =   Replace ( MoneyStr,".","" )  
      StrLen   =   Len ( MoneyStr )  
      ReturnStr   =   ""
      For X   =   0 To StrLen - 1
            TempStr   =   Mid ( MoneyStr,StrLen - X,1 )  
            ReturnStr   =   MoneyDW ( TempStr )   & BasicDW ( X )   & ReturnStr
      Next X
      ReturnStr   =   Replace ( ReturnStr,"零分","" )  
      ReturnStr   =   Replace ( ReturnStr,"零角","零拾","零" )  
      ReturnStr   =   Replace ( ReturnStr,"零佰","零仟","零万","零" )  
      Do
            ReturnStr   =   Replace ( ReturnStr,"零零","零" )  
      Loop While InStr ( ReturnStr,"零零" )   <> 0
      ReturnStr   =   Replace ( ReturnStr,"零圆","圆" )  
      If Right ( ReturnStr,1 )   <> "圆" Then
            ReturnStr   =   Replace ( ReturnStr,"圆","零" )  
            ReturnStr   =   ReturnStr & "圆"
      End If
      ReturnStr   =   ReturnStr & "整"
      NMoneyToSMoney   =   ReturnStr
End Function

原文地址:https://www.jb51.cc/vb/262007.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐