Suma in curirsive

內容

下面你會在 VBA 中找到一個現成的用戶定義函數,它可以轉換任何數字 從0 9 到它的文本表示,即在單詞的數量。 使用前,必須將此功能添加到您的書籍中。 為了這:

  1. 按鍵盤快捷鍵 ALT + F11打開 Visual Basic 編輯器
  2. 通過菜單添加新的空模塊 插入 - 模塊
  3. 複製並粘貼此函數的文本:
函數 SUM(n As Double) As String Dim Nums1, Nums2, Nums3, Nums4 As Variant Nums1 = Array("", "one", "two", "three", "four", "five", "six", "七", "八", "九") Nums2 = Array("", "十", "二十", "三十", "四十", "五十", "六十", "七十", _ "八十", "九十") Nums3 = Array("", "一百", "二百", "三百", "四百", "五百", "六百", "七百", _ "八百", "九百") Nums4 = Array("", "一", "二", "三", "四", "五", "六", "七", "八", "九") Nums5 = Array("十 ", "十一", "十二", "十三", "十四", _ "十五", "十六", "十七", "十八", "十九") 如果 n < = 0 Then SU​​MWRITE = "zero" Exit Function End If '使用輔助函數將數字分成數字 Class ed = Class(n, 1) dec = Class(n, 2) sot = Class(n, 3) tys = Class (n, 4) dectys = Class(n , 5) sottys = Class(n, 6) mil = Class(n, 7) decmil= Class(n, 8) 'check millions Select Case decmil Case 1 mil_txt = Nums5(mil ) & "數百萬" GoTo www Case 2 To 9 decmil_txt = Nums2(decmil) End Select Case mil Case 1 mil_txt = Nums1(mil) & "million " Case 2, 3, 4 mil_txt = Nums1(mil) & "million " Case 5 To 20 mil_txt = Nums1(mil) & "millions " End Select www: sottys_txt = Nums3(sottys) ' check thousands Select Case dectys Case 1 tys_txt = Nums5(tys) & "thousands " GoTo eee Case 2 To 9 dectys_txt = Nums2(dectys) End Select Case tys Case 0 If dectys > 0 Then tys_txt = Nums4(tys) & "thousands " 案例 1 tys_txt = Nums4(tys) & "thousand " 案例 2, 3, 4 tys_txt = Nums4(tys) & "thousands " Case 5 To 9 tys_txt = Nums4(tys) & "thousands " End Select If dectys = 0 And tys = 0 And sottys <> 0 Then sottys_txt = sottys_txt & "thousands" eee: sot_txt = Nums3(sot) '檢查tens Select Case dec Case 1 ed_txt = Nums5(ed) GoTo rrr Case 2 To 9 dec_txt = Nums2(dec) End Select ed_txt = Nums1 (ed) rrr: '用 SUM IN SPEECH = decmil_ txt & mil_txt & sottys_txt & dectys_txt & 形成最後一行tys_txt & sot_txt & dec_txt & ed_txt 結束符nction ' 從數字中提取數字的輔助函數 Private Function Class(M, I) Class = Int(Int(M - (10 ^ I) * Int(M / (10 ^ I))) / 10 ^ (I - 1)) 結束函數    

保存文件(如果您有 Excel 2007 或 2010,則文件類型必須啟用宏,即 xlsm 格式!)並返回 Excel。 現在您可以按照通常的方式將創建的函數插入工作表的任何單元格 - 通過函數嚮導(按鈕 fx 在公式欄中,類別 用戶自定義) 或簡單地通過手動在單元格中鍵入它並使用金額作為參數指定單元格:

如果您需要在收到的文本中添加便士,那麼您可以使用稍微複雜的構造:

 u3d 寫入總和 (A3) & ” 擦。 “&TEXT((A3-INTEGER(A100))*00;”XNUMX″)&”警察。” 

u3d 寫入總和 (A3) & ” 擦。 “&TEXT((A3-INT(A100))*00;”XNUMX″)&”警察。”

然後,例如,對於數字 35,15,函數的結果將看起來像“三十五盧布。 15 kop。”

 

  • 來自 PLEX 插件的更強大的功能版本,包含盧布和科比 / 英語
  • 什麼是宏,在哪裡插入宏代碼,如何使用它們

 

發表評論