Suma ing cuirsive

Paragraf

Ing ngisor iki sampeyan bakal nemokake fungsi sing wis ditemtokake pangguna ing VBA sing nerjemahake nomer apa wae saka 0 kanggo 9 menyang representasi tekstual, yaiku jumlah ing tembung. Sadurunge digunakake, fungsi iki kudu ditambahake menyang buku sampeyan. Kanggo iki:

  1. pencet trabasan keyboard ALT + F11kanggo mbukak Visual Basic Editor
  2. nambah modul kosong anyar liwat menu Insert - Modul
  3. salin lan tempel teks fungsi iki ing kana:
Fungsi SUM(n As Double) As String Dim Nums1, Nums2, Nums3, Nums4 As Variant Nums1 = Array("", "siji", "loro", "telu", "papat", "lima", "enem", "pitu", "wolu", "sangang") Nums2 = Array("", "sepuluh", "rong puluh", "telung puluh", "patang puluh", "sèket", "sewidak", "pitu puluh", _ "wolu puluh" ", "sangang puluh") Nums3 = Array("", "satus", "rong atus", "telung atus", "patang atus", "limang atus", "nem atus", "pitu atus", _ " wolung atus", "sangang atus") Nums4 = Array("", "siji", "loro", "telu", "papat", "lima", "enem", "pitu", "wolu", "sangang". ") Nums5 = Array("sepuluh" , "sewelas", "rolas", "telulas", "patbelas", _ "limalas", "nembelas", "pitulas", "wolulas", "sangalas") Yen n < = 0 Banjur SUMWRITE = "nol" Exit Function End Yen 'bagi nomer dadi digit nggunakake fungsi helper Class ed = Class(n, 1) dec = Class(n, 2) sot = Class(n, 3) tys = Class (n, 4) dectys = Kelas(n , 5) sottys = Kelas(n, 6) mil = Kelas(n, 7) decmil= Kelas(n, 8) 'mriksa yuta Pilih Kasus decmil Kasus 1 mil_txt = Nums5(mil ) & "yuta" GoTo www Kasus 2 Nganti 9 decmil_txt = Nums2(decmil) End Pilih Pilih Kasus mil Kasus 1 mil_txt = Nums1(mil) & "yuta" Kasus 2, 3, 4 mil_txt = Nums1(mil) & "yuta" Kasus 5 Nganti 20 mil_txt = Nums1(mil) & "yuta" End Pilih www: sottys_txt = Nums3(sottys) ' mriksa ewu Pilih kasus dectys Kasus 1 tys_txt = Nums5(tys) & "ewu" GoTo eee Kasus 2 nganti 9 dectys_txt = Nums2(dectys) End Pilih Pilih Case tys Case 0 Yen dectys > 0 Banjur tys_txt = Nums4(tys) & "thousands" Case 1 tys_txt = Nums4(tys) & "thousand" Case 2, 3, 4 tys_txt = Nums4(tys) & "ewu" Kasus 5 Nganti 9 tys_txt = Nums4(tys) & "ewu" End Pilih Yen dectys = 0 Lan tys = 0 Lan sottys <> 0 Banjur sottys_txt = sottys_txt & "ewu" eee: sot_txt = Nums3(sot) ' mriksa puluhan Pilih Kasus dec Kasus 1 ed_txt = Nums5(ed) GoTo rrr Kasus 2 Nganti 9 dec_txt = Nums2(dec) End Pilih ed_txt = Nums1 (ed) rrr: 'wangun baris pungkasan nganggo SUM IN SPEECH = decmil_ txt & mil_txt & sottys_txt & dectys_txt & tys_txt & sot_txt & dec_txt & ed_txt End Function ' fungsi helper kanggo ngekstrak saka jumlah digit Private Function Class(M, I) Class = Int(Int(M - (10 ^ I) * Int(M / ( 10 ^ I))) / 10 ^ (I - 1)) Fungsi Akhir    

Simpen file kasebut (yen sampeyan duwe Excel 2007 utawa 2010, mula jinis file kasebut kudu diaktifake makro, yaiku format xlsm!) lan bali menyang Excel. Saiki sampeyan bisa nglebokake fungsi sing digawe menyang sel apa wae ing lembar kerja kanthi cara biasa - liwat tuntunan fungsi (tombol fx ing formula bar, kategori Ditetepake pangguna) utawa mung kanthi ngetik ing sel kanthi manual lan nemtokake sel kanthi jumlah minangka argumen:

Yen sampeyan pengin nambah dhuwit menyang teks sing ditampa, sampeyan bisa nggunakake konstruksi sing rada rumit:

 u3d SUM IN WRITE (A3) & ” gosok. "&TEKS((A3-INTEGER(A100))*00;"XNUMX″)&"polisi." 

u3d SUM IN WRITE (A3) & ” gosok. "&TEXT((A3-INT(A100))*00;"XNUMX″)&"polisi."

Banjur, contone, kanggo nomer 35,15, asil fungsi bakal katon kaya "telung puluh lima rubel. 15 kop.”

 

  • Versi luwih kuat saka fungsi karo rubles lan kopecks ing / Inggris saka PLEX add-on
  • Apa macro, ngendi kanggo masang kode macro, carane nggunakake

 

Ninggalake a Reply