日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

数字转换为英文大写

發(fā)布時(shí)間:2024/4/17 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 数字转换为英文大写 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

之前一個(gè)網(wǎng)友工作中需要把數(shù)字轉(zhuǎn)換為英文大寫,于是就給他寫了一個(gè)。函數(shù)有兩個(gè)參數(shù),數(shù)字和單位。第二個(gè)參數(shù)為計(jì)量單位,可以是貨幣也可以是重量。 代碼如下:

1 Function Num2Str(FullNum As Variant, NumUnit As Integer) 2 Dim NumLen As Integer 3 Dim i As Integer 4 Dim ArrUnit 5 Dim SubUnit 6 Dim Factor 7 Dim Num As Variant 8 Dim Dec As String 9 10 ArrUnit = Array("Dollar", "Euro", "KG", "KPC") 11 SubUnit = Array("Cent", "Cent", "G", "PC") 12 Factor = Array(100, 100, 1000, 1000) 13 14 Num = Int(FullNum) 15 Dec = Right(Application.Round(((FullNum - Num) * Factor(NumUnit)), 0) + 1000, 3) 16 17 NumLen = Application.RoundUp(Len(Num) / 3, 0) 18 Num2Str = "" 19 20 For i = NumLen To 1 Step -1 21 Num2Str = Num2Str & NumPart(Mid(10 ^ (3 * NumLen) + Num, 2 + 3 * NumLen - 3 * i, 3), i) 22 Next i 23 24 Num2Str = Num2Str & " " & ArrUnit(NumUnit) 25 If Num > 1 Then Num2Str = Num2Str & "s" 26 If Dec <> "000" Then 27 Num2Str = Num2Str & NumPart(Dec, 1) ' 28 Num2Str = Num2Str & " " & SubUnit(NumUnit) 29 If Dec <> "001" Then Num2Str = Num2Str & "s" 30 End If 31 Num2Str = Num2Str & "." 32 33 End Function 34 35 Function NumPart(Num As String, Part As Integer) 36 Dim ArrNum 37 Dim ArrTen 38 Dim ArrTeen 39 Dim iDigit As Integer 40 41 ArrNum = Array("One", "Two", "Three", "Four", "Five", "Six", "Seven", "Eight", "Nine") 42 ArrTen = Array("Twenty", "Thirty", "Forty", "Fifty", "Sixty", "Seventy", "Eighty", "Ninty") 43 ArrTeen = Array("Ten", "Eleven", "Twelve", "Thirteen", "Fourteen", "Fifteen", "Sixteen", "Seventeen", "Eighteen", "Nineteen") 44 45 iDigit = Left(Num, 1) 46 If iDigit <> 0 Then NumPart = " " & ArrNum(iDigit - 1) & " Hundred" 47 48 iDigit = Mid(Num, 2, 1) 49 If iDigit = 1 Then 50 iDigit = Right(Num, 1) 51 NumPart = NumPart & " " & ArrTeen(iDigit) & " " 52 GoTo Unit 53 Else 54 If iDigit <> 0 Then NumPart = NumPart & " " & ArrTen(iDigit - 2) 55 End If 56 57 iDigit = Right(Num, 1) 58 If iDigit <> 0 Then NumPart = NumPart & " " & ArrNum(iDigit - 1) 59 60 Unit: 61 If Part = 3 Then NumPart = NumPart & " Million " 62 If Part = 2 Then NumPart = NumPart & " Thousand " 63 64 End Function

?

轉(zhuǎn)載于:https://www.cnblogs.com/wisever/p/9385580.html

與50位技術(shù)專家面對(duì)面20年技術(shù)見證,附贈(zèng)技術(shù)全景圖

總結(jié)

以上是生活随笔為你收集整理的数字转换为英文大写的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。