Suma nyob rau hauv cuirsive

txheem

Hauv qab no koj yuav pom cov neeg siv tau npaj ua tiav hauv VBA uas txhais cov lej los ntawm 0 rau 9 nyob rau hauv nws cov ntawv nyeem sawv cev, piv txwv li nyob rau hauv tus nqi ntawm cov lus. Ua ntej siv, cov haujlwm no yuav tsum muab ntxiv rau koj phau ntawv. Rau qhov no:

  1. nias lub keyboard shortcut ALT + F11qhib Visual Basic Editor
  2. ntxiv tshiab khoob module ntawm cov ntawv qhia zaub mov Ntxig - Module
  3. luam thiab paste cov ntawv ntawm cov haujlwm no muaj:
Function SUM(n As Ob) As String Dim Nums1, Nums2, Nums3, Nums4 As Variant Nums1 = Array("", "ib", "ob", "peb", "plaub", "tsib", "six", "xya", "yim", "nine") Nums2 = Array("", "kaum", "nees", "thirty", "forty", "tsifty", "sixty", "seventy", _ "eighty ", "ninety") Nums3 = Array("", "ib puas", "ob puas", "peb puas", "plaub puas", "tsib puas", "six hundred", "seven hundred", _ " yim puas", "nine hundred") Nums4 = Array("", "ib", "ob", "peb", "plaub", "tsib", "six", "seven", "eight", "cine" ") Nums5 = Array("ten", "eleven", "twelve", "thirteen", "fourteen", _ "five", "six", "seventeen", "teeneigh", "nineteen") Yog n < = 0 Ces SUMWRITE = "zero" Exit Function End Yog tias ' faib cov lej rau hauv tus lej siv tus pab cuam 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 Xaiv Case decmil Case 1 mil_txt = Nums5(mil ) & "millions" 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 txhiab Select Case dectys Case 1 tys_txt = Nums5(tys) & "thousands" GoTo eee Case 2 To 9 dectys_txt Nums2(dectys) End Xaiv Xaiv Case tys Case 0 If dectys > 0 Then tys_txt = Nums4(tys) & "thousands" Case 1 tys_txt = Nums4(tys) & "thousand" Case 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) check tens Select Case dec Case 1 ed_txt = Nums5(ed) GoTo rrrr Case 2 To 9 dec_txt = Nums2(dec) End Select ed_txt = Nums1 (ed) rrr: 'form the final row with SUM IN SPEECH = decmil_ txt & mil_txt & sottys_txt & dectys_txt & tys_txt & sot_txt & dec_txt & ed_txt End Function ' helper function to extract from the number of digits Private Function Class(M, I) Class = Int(Int(M - (10 ^ I) * Int(M / ( 10^I)))/10^(I - 1)) End Function    

Txuag cov ntaub ntawv (yog tias koj muaj Excel 2007 lossis 2010, tom qab ntawd hom ntaub ntawv yuav tsum tau qhib macro, piv txwv li xlsm hom!) thiab rov qab mus rau Excel. Tam sim no koj tuaj yeem ntxig qhov tsim ua haujlwm rau hauv ib lub xovtooj ntawm daim ntawv ua haujlwm li niaj zaus - los ntawm kev ua haujlwm wizard (khawm fx hauv formula bar, qeb Neeg Siv Li) lossis yooj yim los ntawm kev ntaus nws hauv lub xov tooj ntawm tes thiab qhia lub xov tooj nrog tus nqi raws li kev sib cav:

Yog tias koj xav tau ntxiv pennies rau cov ntawv tau txais, ces koj tuaj yeem siv kev tsim kho me ntsis ntxiv:

 u3d SUM IN WRITE (A3) & "rub. "&TEXT((A3-INTEGER(A100))*00;"XNUMX")&"cop." 

u3d SUM IN WRITE (A3) & "rub. "&TEXT((A3-INT(A100))*00;"XNUMX")&"cop."

Tom qab ntawd, piv txwv li, rau tus lej 35,15, qhov tshwm sim ntawm kev ua haujlwm yuav zoo li "peb caug-tsib rubles. 15 kob."

 

  • Lub zog ntau dua ntawm cov haujlwm nrog ruble thiab kopecks hauv / Lus Askiv los ntawm PLEX add-on
  • Dab tsi yog macro, qhov twg los ntxig macro code, siv lawv li cas

 

Sau ntawv cia Ncua