網站首頁 健康小知識 母嬰教育 起名 運動知識 職場理財 情感生活 綠色生活 遊戲數碼 美容 特色美食 愛好
當前位置:酷知知識幫 > 遊戲數碼 > 電腦

Excel如何數字轉換為英文

欄目: 電腦 / 發佈於: / 人氣:2.43W

數字轉換為英文對於英語比較差的同學來説是很難的一件事情,我們能不能用VBA代碼來輕鬆實現這個過程呢?現在我們就用ExcelVba代碼來實現這個操作。

Excel如何數字轉換為英文

編寫代碼:

(01)新建如圖所示的Excel表格,我們講吧A列中的數字用英文的形式轉換到B列中。

Excel如何數字轉換為英文 第2張

(02)按住“Alt+F11”打開VBA編輯器,如圖所示。

Excel如何數字轉換為英文 第3張

(03)在VBA編輯器中單擊菜單欄“插入”——模塊,如圖所示。

Excel如何數字轉換為英文 第4張

(04)在打開的模塊中輸入如下代碼:Option ExplicitFunction 數字轉英文(ByVal MyNumber)Dim Dollars, Cents, TempDim DecimalPlace, CountReDim Place(9) As StringPlace(2) = " Thousand "Place(3) = " Million "Place(4) = " Billion "Place(5) = " Trillion "MyNumber = Trim(Str(MyNumber))DecimalPlace = InStr(MyNumber, ".")If DecimalPlace > 0 ThenCents = GetTens(Left(Mid(MyNumber, DecimalPlace + 1) & _"00", 2))MyNumber = Trim(Left(MyNumber, DecimalPlace - 1))End IfCount = 1Do While MyNumber <> ""Temp = GetHundreds(Right(MyNumber, 3))If Temp <> "" Then Dollars = Temp & Place(Count) & DollarsIf Len(MyNumber) > 3 ThenMyNumber = Left(MyNumber, Len(MyNumber) - 3)ElseMyNumber = ""End IfCount = Count + 1LoopSelect Case DollarsCase ""Dollars = "No Dollars"Case "One"Dollars = "One Dollar"Case ElseDollars = Dollars & " Dollars"End SelectSelect Case CentsCase ""Cents = " and No Cents"Case "One"Cents = " and One Cent"Case ElseCents = " and " & Cents & " Cents"End Select數字轉英文 = Dollars & CentsEnd FunctionFunction GetHundreds(ByVal MyNumber)Dim Result As StringIf Val(MyNumber) = 0 Then Exit FunctionMyNumber = Right("000" & MyNumber, 3)If Mid(MyNumber, 1, 1) <> "0" ThenResult = GetDigit(Mid(MyNumber, 1, 1)) & " Hundred "End IfIf Mid(MyNumber, 2, 1) <> "0" ThenResult = Result & GetTens(Mid(MyNumber, 2))ElseResult = Result & GetDigit(Mid(MyNumber, 3))End IfGetHundreds = ResultEnd FunctionFunction GetTens(TensText)Dim Result As StringResult = ""If Val(Left(TensText, 1)) = 1 ThenSelect Case Val(TensText)Case 10: Result = "Ten"Case 11: Result = "Eleven"Case 12: Result = "Twelve"Case 13: Result = "Thirteen"Case 14: Result = "Fourteen"Case 15: Result = "Fifteen"Case 16: Result = "Sixteen"Case 17: Result = "Seventeen"Case 18: Result = "Eighteen"Case 19: Result = "Nineteen"Case ElseEnd SelectElseSelect Case Val(Left(TensText, 1))Case 2: Result = "Twenty "Case 3: Result = "Thirty "Case 4: Result = "Forty "Case 5: Result = "Fifty "Case 6: Result = "Sixty "Case 7: Result = "Seventy "Case 8: Result = "Eighty "Case 9: Result = "Ninety "Case ElseEnd SelectResult = Result & GetDigit _(Right(TensText, 1))End IfGetTens = ResultEnd FunctionFunction GetDigit(Digit)Select Case Val(Digit)Case 1: GetDigit = "One"Case 2: GetDigit = "Two"Case 3: GetDigit = "Three"Case 4: GetDigit = "Four"Case 5: GetDigit = "Five"Case 6: GetDigit = "Six"Case 7: GetDigit = "Seven"Case 8: GetDigit = "Eight"Case 9: GetDigit = "Nine"Case Else: GetDigit = ""End SelectEnd Function

Excel如何數字轉換為英文 第5張

調用函數:

(01)現在回到Excel表格中,單擊“B1”單元格,在菜單欄選擇“插入”——函數。

Excel如何數字轉換為英文 第6張

(02)在打開的“插入函數”對話框的“或選擇類別”中選擇“用户定義”,然後選擇函數“數字轉英文”,單擊“確定”按鈕。

Excel如何數字轉換為英文 第7張

(03)在打開的“函數參數”對話框中輸入“A1”,單擊“確定”按鈕。

Excel如何數字轉換為英文 第8張

(04)然後用填充手柄向下填充公式,現在就可以看到轉換好的英文了。

Excel如何數字轉換為英文 第9張
Tags:Excel 轉換