网页素材: 导航菜单选项卡滑动门焦点图图片切换下拉菜单弹出层Tabs链接提示

您的当前位置: 源码爱好者 » 网页制作教程(编程教程) » VB技术教程

Vb把数字替换成英文单词来显示

  • 标签:字符串替换 更新时间:2014-07-31
  • Vb6编程实现把数字转成英文单词字符,建立D2T巨集,并设置快捷键为Shift + Ctrl + T,具体代码先收藏吧:

    Sub D2T()
    Dim MyStr As String
    MyStr = ActiveCell.Text
    If IsNumeric(MyStr) = True Then
    ActiveCell.Value = ""
    Select Case Len(MyStr)
    Case 1
    OneDG (MyStr)
    Case 2
    TwoDG (MyStr)
    Case 3
    ThreeDG (MyStr)
    Case 4
    OneDG (Left(MyStr, 1))
    ActiveCell.Value = ActiveCell.Value + " Thousand "
    ThreeDG (Right(MyStr, 3))
    Case 5
    TwoDG (Left(MyStr, 2))
    ActiveCell.Value = ActiveCell.Value + " Thousand "
    ThreeDG (Right(MyStr, 3))
    Case 6
    ThreeDG (Left(MyStr, 3))
    ActiveCell.Value = ActiveCell.Value + " Thousand "
    ThreeDG (Right(MyStr, 3))
    Case 7
    OneDG (Left(MyStr, 1))
    ActiveCell.Value = ActiveCell.Value + " Millon "
    ThreeDG (Mid(MyStr, 2, 3))
    ActiveCell.Value = ActiveCell.Value + " Thousand "
    ThreeDG (Right(MyStr, 3))
    Case 8
    TwoDG (Left(MyStr, 2))
    ActiveCell.Value = ActiveCell.Value + " Millon "
    ThreeDG (Mid(MyStr, 3, 3))
    ActiveCell.Value = ActiveCell.Value + " Thousand "
    ThreeDG (Right(MyStr, 3))
    Case 9
    ThreeDG (Left(MyStr, 3))
    ActiveCell.Value = ActiveCell.Value + " Millon "
    ThreeDG (Mid(MyStr, 4, 3))
    ActiveCell.Value = ActiveCell.Value + " Thousand "
    ThreeDG (Right(MyStr, 3))
    Case 10
    OneDG (Left(MyStr, 1))
    ActiveCell.Value = ActiveCell.Value + " Billon "
    ThreeDG (Mid(MyStr, 2, 3))
    ActiveCell.Value = ActiveCell.Value + " Millon "
    ThreeDG (Mid(MyStr, 5, 3))
    ActiveCell.Value = ActiveCell.Value + " Thousand "
    ThreeDG (Right(MyStr, 3))
    Case 11
    TwoDG (Left(MyStr, 2))
    ActiveCell.Value = ActiveCell.Value + " Billon "
    ThreeDG (Mid(MyStr, 3, 3))
    ActiveCell.Value = ActiveCell.Value + " Millon "
    ThreeDG (Mid(MyStr, 6, 3))
    ActiveCell.Value = ActiveCell.Value + " Thousand "
    ThreeDG (Right(MyStr, 3))
    Case Else
    End Select
    End If
    End Sub
    Sub OneDG(MyStr As String)
    Select Case MyStr
    Case "0"
    If ActiveCell.Value = "" Then ActiveCell.Value = ActiveCell.Value + "Zero"
    Case "1"
    ActiveCell.Value = ActiveCell.Value + "One"
    Case "2"
    ActiveCell.Value = ActiveCell.Value + "Two"
    Case "3"
    ActiveCell.Value = ActiveCell.Value + "Three"
    Case "4"
    ActiveCell.Value = ActiveCell.Value + "Four"
    Case "5"
    ActiveCell.Value = ActiveCell.Value + "Five"
    Case "6"
    ActiveCell.Value = ActiveCell.Value + "Six"
    Case "7"
    ActiveCell.Value = ActiveCell.Value + "Seven"
    Case "8"
    ActiveCell.Value = ActiveCell.Value + "Eight"
    Case "9"
    ActiveCell.Value = ActiveCell.Value + "Nine"
    End Select
    End Sub
    Sub TwoDG(MyStr As String)
    Select Case MyStr
    Case "10"
    ActiveCell.Value = ActiveCell.Value + "Ten"
    Case "11"
    ActiveCell.Value = ActiveCell.Value + "eleven"
    Case "12"
    ActiveCell.Value = ActiveCell.Value + "Twelve"
    Case "13"
    ActiveCell.Value = ActiveCell.Value + "Thirteen"
    Case "14"
    ActiveCell.Value = ActiveCell.Value + "Fourteen"
    Case "15"
    ActiveCell.Value = ActiveCell.Value + "Fifteen"
    Case "16"
    ActiveCell.Value = ActiveCell.Value + "Sixteen"
    Case "17"
    ActiveCell.Value = ActiveCell.Value + "Seventeen"
    Case "18"
    ActiveCell.Value = ActiveCell.Value + "Eighteen"
    Case "19"
    ActiveCell.Value = ActiveCell.Value + "Nineteen"
    Case Else
    Select Case Left(MyStr, 1)
    Case "2"
    ActiveCell.Value = ActiveCell.Value + "Twenty "
    Case "3"
    ActiveCell.Value = ActiveCell.Value + "Thirty "
    Case "4"
    ActiveCell.Value = ActiveCell.Value + "Forty "
    Case "5"
    ActiveCell.Value = ActiveCell.Value + "Fifty "
    Case "6"
    ActiveCell.Value = ActiveCell.Value + "Sixty "
    Case "7"
    ActiveCell.Value = ActiveCell.Value + "Seventy "
    Case "8"
    ActiveCell.Value = ActiveCell.Value + "Eighty "
    Case "9"
    ActiveCell.Value = ActiveCell.Value + "Ninety "
    End Select
    OneDG (Right(MyStr, 1))
    End Select
    End Sub
    Sub ThreeDG(MyStr As String)
    Select Case Left(MyStr, 1)
    Case "1"
    ActiveCell.Value = ActiveCell.Value + "One Handred "
    Case "2"
    ActiveCell.Value = ActiveCell.Value + "Two Handred "
    Case "3"
    ActiveCell.Value = ActiveCell.Value + "Three Handred "
    Case "4"
    ActiveCell.Value = ActiveCell.Value + "Four Handred "
    Case "5"
    ActiveCell.Value = ActiveCell.Value + "Five Handred "
    Case "6"
    ActiveCell.Value = ActiveCell.Value + "Six Handred "
    Case "7"
    ActiveCell.Value = ActiveCell.Value + "Seven Handred "
    Case "8"
    ActiveCell.Value = ActiveCell.Value + "Eight Handred "
    Case "9"
    ActiveCell.Value = ActiveCell.Value + "Night Handred "
    End Select
    TwoDG Right(MyStr, 2)
    End Sub

     

    上面的程式码可以处理到11位数。随意输入一个未超过11位数的数字,然后把输入游标移到该Cell里。同时按下 Shift + Ctrl + T组合键。

  • 已读: 次 收藏本文关闭本文打印本文复制链接
处理 SSI 文件时出错