龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > VB开发 >

人民币小写转大写

时间:2009-12-30 15:42来源:未知 作者:admin 点击:
分享到:
->PublicFunctionZDX(XAsCurrency)AsString DimlnPAsInteger DimPrcAsString DimTmpAsString DimNoBAsCurrency DimDxAsString DimXxAsString DimZhenAsBoolean DimStr(10)AsString DimChinaAsString China="分角元拾佰仟万拾佰仟亿" Str(0)="零"
->PublicFunctionZDX(XAsCurrency)AsString
  DimlnPAsInteger
  DimPrcAsString
  DimTmpAsString
  DimNoBAsCurrency
  DimDxAsString
  DimXxAsString
  DimZhenAsBoolean
  DimStr(10)AsString
  DimChinaAsString
  China="分角元拾佰仟万拾佰仟亿"
  Str(0)="零"
  Str(1)="壹"
  Str(2)="贰"
  Str(3)="叁"
  Str(4)="肆"
  Str(5)="伍"
  Str(6)="陆"
  Str(7)="柒"
  Str(8)="捌"
  Str(9)="玖"
  
  Zhen=True
  X=FormatNumber(X,2)
  Prc=CStr(X)
  Prc=Replace(Prc,",","")
  
  lnP=Len(Prc)
  Fori=lnP-1To1Step-1
  IfMid(Prc,i,1)="."Then
  SelectCaselnP-i
  Case1
  Prc=Replace(Prc,".","") "0"
  Case2
  Prc=Replace(Prc,".","")
  EndSelect
  Zhen=False
  ExitFor
  EndIf
  Nexti
  IfZhenThenPrc=Prc "00"
  lnP=Len(Prc)
  Fori=1TolnP
  Tmp=Str(Mid(Prc,i,1))&Tmp
  Nexti
  
  ZDX=""
  fy=1
  Fori=1TolnP
  Xx=Mid(Tmp,i,1)
  Dx=Mid(China,i,1)
  
  IfXx<>"零"Then
  ZDX=Xx&Dx&ZDX
  f=1
  Else
  Ifi=3Then
  ZDX=Dx&ZDX
  EndIf
  
  Ifi=7Then
  ZDX=Dx&ZDX
  EndIf
  IffThen
  ZDX="零"&ZDX
  EndIf
  f=0
  EndIf
  Nexti
  IfZhenThenZDX=ZDX "正"
  ZDX=Replace(ZDX,"零万","万")
  ZDX=Replace(ZDX,"零元","元")
  
  EndFunction->
->

精彩图集

赞助商链接