分别将下面两段代码存到相应文件名中,再建新工程加入这个窗体和模块
form1.frm :
----------------------------------------------
VERSION 5.00
Begin VB.Form Form1 
   Caption         =   "大写金额演示"
   ClientHeight    =   2625
   ClientLeft      =   60
   ClientTop       =   345
   ClientWidth     =   4200
   LinkTopic       =   "Form1"
   ScaleHeight     =   2625
   ScaleWidth      =   4200
   StartUpPosition =   3  'Windows Default
   Begin VB.CommandButton Command2 
      Caption         =   "退出"
      BeginProperty Font 
         Name            =   "宋体"
         Size            =   9
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   495
      Left            =   2640
      TabIndex        =   5
      Top             =   1800
      Width           =   1215
   End
   Begin VB.TextBox Text2 
      BeginProperty Font 
         Name            =   "宋体"
         Size            =   9
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   375
      Left            =   1440
      Locked          =   -1  'True
      TabIndex        =   2
      Top             =   840
      Width           =   2415
   End
   Begin VB.TextBox Text1 
      Height          =   375
      Left            =   1440
      TabIndex        =   1
      Text            =   "0"
      Top             =   240
      Width           =   2415
   End
   Begin VB.CommandButton Command1 
      Caption         =   "转换大写金额"
      BeginProperty Font 
         Name            =   "宋体"
         Size            =   9
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   495
      Left            =   360
      TabIndex        =   0
      Top             =   1800
      Width           =   1575
   End
   Begin VB.Label Label2 
      Caption         =   "大写金额"
      BeginProperty Font 
         Name            =   "宋体"
         Size            =   9
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   375
      Left            =   240
      TabIndex        =   4
      Top             =   840
      Width           =   855
   End
   Begin VB.Label Label1 
      Caption         =   "数字金额"
      BeginProperty Font 
         Name            =   "宋体"
         Size            =   9
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   375
      Left            =   240
      TabIndex        =   3
      Top             =   240
      Width           =   855
   End
End
Attribute VB_Name = "Form1"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Private Sub Command1_Click()
    If Text1.Text = "0" Then
        Text2.Text = "零圆"
    Else
        Text2.Text = changemoney(Val(Text1.Text))
    End If
End Sub
Private Sub Command2_Click()
    End
End SubPrivate Sub Text2_GotFocus()
    Text1.SetFocus
End Sub
-----------------------------------module1.bas
----------------------Attribute VB_Name = "Module1"
Private Function changnum(num As Integer) As String
    Select Case num
    Case 0
        changnum = "零"
    Case 1
        changnum = "壹"
    Case 2
        changnum = "贰"
    Case 3
        changnum = "叁"
    Case 4
        changnum = "肆"
    Case 5
        changnum = "伍"
    Case 6
        changnum = "陆"
    Case 7
        changnum = "柒"
    Case 8
        changnum = "捌"
    Case 9
        changnum = "玖"
    End Select
End Function
Public Function changemoney(num) As String
    Dim money1 As String
    Dim tn
    Dim k1 As String
    Dim k2 As String
    Dim k3 As String    If num = 0 Then
        changemoney = " "
        Exit Function
    End If
    If num < 0 Then
        changemoney = "负" + changemoney(Abs(num))
        Exit Function
    End If
    money1 = Trim(Str(num))
    tn = InStr(money1, ".")  '小数位置
    k1 = ""
    If tn <> 0 Then
        ST1 = Right(money1, Len(money1) - tn)
        If ST1 <> "" Then
            t1 = Left(ST1, 1)
            ST1 = Right(ST1, Len(ST1) - 1)
            If t1 <> "0" Then
                k1 = k1 + changnum(Val(t1)) + "角"
            End If
            If ST1 <> "" Then
                t1 = Left(ST1, 1)
                k1 = k1 + changnum(Val(t1)) + "分"
            End If
        End If
        ST1 = Left(money1, tn - 1)
    Else
        ST1 = money1
    End If    k2 = ""
    If ST1 <> "" Then
        t1 = Right(ST1, 1)
        ST1 = Left(ST1, Len(ST1) - 1)
        k2 = changnum(Val(t1)) + k2
    End If    If ST1 <> "" Then
        t1 = Right(ST1, 1)
        ST1 = Left(ST1, Len(ST1) - 1)
        If t1 <> "0" Then
            k2 = changnum(Val(t1)) + "拾" + k2
        Else
            If Left(k2, 1) <> "零" Then k2 = "零" + k2
        End If
    End If    If ST1 <> "" Then
        t1 = Right(ST1, 1)
        ST1 = Left(ST1, Len(ST1) - 1)
        If t1 <> "0" Then
            k2 = changnum(Val(t1)) + "佰" + k2
        Else
            If Left(k2, 1) <> "零" Then k2 = "零" + k2
        End If
    End If    If ST1 <> "" Then
        t1 = Right(ST1, 1)
        ST1 = Left(ST1, Len(ST1) - 1)
        If t1 <> "0" Then
            k2 = changnum(Val(t1)) + "仟" + k2
        Else
            If Left(k2, 1) <> "零" Then k2 = "零" + k2
        End If
    End If    k3 = ""
    If ST1 <> "" Then
        t1 = Right(ST1, 1)
        ST1 = Left(ST1, Len(ST1) - 1)
        k3 = changnum(Val(t1)) + k3
    End If
    If ST1 <> "" Then
        t1 = Right(ST1, 1)
        ST1 = Left(ST1, Len(ST1) - 1)
        If t1 <> "0" Then
            k3 = changnum(Val(t1)) + "拾" + k3
        Else
            If Left(k3, 1) <> "零" Then k3 = "零" + k3
        End If
    End If    If ST1 <> "" Then
        t1 = Right(ST1, 1)
        ST1 = Left(ST1, Len(ST1) - 1)
        If t1 <> "0" Then
            k3 = changnum(Val(t1)) + "佰" + k3
        Else
            If Left(k3, 1) <> "零" Then k3 = "零" + k3
        End If
    End If    If ST1 <> "" Then
        t1 = Right(ST1, 1)
        ST1 = Left(ST1, Len(ST1) - 1)
        If t1 <> "0" Then
            k3 = changnum(Val(t1)) + "仟" + k3
        End If
    End If
    If Right(k2, 1) = "零" Then k2 = Left(k2, Len(k2) - 1)
    If Len(k3) > 0 Then
        If Right(k3, 1) = "零" Then k3 = Left(k3, Len(k3) - 1)
        k3 = k3 & "万"
    End If    changemoney = IIf(k3 & k2 = "", k1, k3 & k2 & "元" & k1)
End Function

解决方案 »

  1.   

    Public Function Xzd(ByVal F As String) As String
    Dim m As String, n As String, k As String, i As Integer, bz As Boolean, bzbz As Boolean, mn As String, flen As Integer
    If Val(F) > 0 Then
        k = "": F = CStr(Round(Val(F), 2))
        
    Else
        k = "负": F = CStr(Round(-Val(F), 2))
    End If
    bz = False: bzbz = False: m = "分角元拾佰仟万拾佰仟亿拾佰仟": n = "零壹贰叁肆伍陆柒捌玖"
    If InStr(Right(F, 3), ".") = 0 Then
       F = F + "00"
    ElseIf InStr(Right(F, 2), ".") > 0 Then
       F = F + "0"
    End If
    F = Replace(F, ".", ""): F = IIf(Left(F, 1) = "0", Mid(F, 2), F): flen = Len(F)
    For i = 1 To flen
        mn = Mid(m, flen + 1 - i, 1)
        If Val(Mid(F, i, 1)) <> 0 Then
           If bz Then k = k + "零"
           k = k + Mid(n, Val(Mid(F, i, 1)) + 1, 1) + mn
           bz = False: bzbz = False
           If mn = "亿" Then bzbz = True
        Else
           If InStr("万亿元", mn) > 0 Then
              If Not bzbz Or mn = "元" Then k = k + mn
                 bz = True: bzbz = True
              Else
                 bz = True
             End If
         End If
    Next i
    Xzd = IIf(Val(Mid(F, flen, 1)) = 0, k + "整", k)
    End Function