Beranda > OpenOffice > FUNGSI DAN EXTENSION TERBILANG UNTUK OPEN OFFICE CALC

FUNGSI DAN EXTENSION TERBILANG UNTUK OPEN OFFICE CALC


Baru2 ini ada perubahan yang cukup radikal :smile: di kantor saya … semua software yang tanpa lisensi dibabat abis dari mOlai Operating System sampE aplikasi2nya termasuk MS Office … kalO cuman ngetik di Word dan ngitung2 formula sederhana Excel sih emang ndak terlalu puyeng untuk migrasinya … mekipun ada perbedaan tapi cuman sedikit … dengan sedikit latihan dan membiasakan diri menggunakan open office masalah perbedaan mungkin bisa diatasi.

Muncul masalah saat file2 excel yang mengandung macro dibuka dengan Calc … macronya nggak mau jalan boss :sad: … meskipun sekarang sudah ada OpenOffice.org Basic ndak semua perintah2 VB tersedia … dengan sangat terpaksa saya harus say goodbye pada project2 macro Excel saya.

Iseng2 saya coba copy fungsi terbilang saya ke module OpenOffice.org Basic lalu test … bener bos ndak mau jalan … “BASIC runtime error. Sub-procedure or funct……” begitu kata OpenOffice.org Basic … ndak mau nyerah saya cari perintah2 yang mogok, trus saya cari2 referensi di help OpenOffice mungkin saja ada solusinya … setelah edit sana edit sini … fungsi terbilang pun bisa jalan di Calc.

untuk nama fungsinya saya rubah menjadi TERBOC (Terbilang OpenOffice Calc) … contoh :

=TERBOC(123) akan menghasilkan Seratus Duapuluh Tiga

meskipun sudah bisa jalan dengan sukses ada beberapa perbedaan dengan fungsi terbilang saya yang di Excel, berikut beberapa perbedaannya :

  1. hanya mampu men-convert 14 digit angka (max 99.999.999.999.999) … lebih dari itu akan ngaco terbilangnya … makanya untuk > 14 digit akan mengasilkan pesan Error “#MAX 14 DIGIT#”.
  2. semua bilangan pecahan akan dibulatkan kebawah … karena fungsi ROUND ndak jalan dan saya gati dengan fungsi FIX atau INT

agar fungsi ini di-load tiap OpenOffice dijalankan saya taruh kodenya di Mymacros>Standard>Module1 … bener ndak yah ? … MDLMDL (Monggo Dipun Leresaken Menawi Dalem Lepat)

berikut adalah kodenya :

1 Public Function TERBOC(x As Double) As String
2 TERBOC=””
3 ANGKA = Array(“”, “Satu”, “Dua”, “Tiga”, “Empat”, “Lima”, “Enam”, “Tujuh”, “Delapan”, “Sembilan”, “Sepuluh”, “Sebelas”, “Duabelas”, “Tigabelas”, “Empatbelas”, “Limabelas”, “Enambelas”, “Tujuhbelas”, “Delapanbelas”, “Sembilanbelas”)
4 LEVEL = Array(” Triliun “, ” Miliar “, ” Juta “, ” Ribu “, ” “)
5 MAXDIGIT=right(“00000000000000″ & abs(int(x)),15)
6 For i = 0 To 4
7 TEMPRP = “”
8 If fix(Mid(MAXDIGIT, 1 + (3 * i), 1)) =1 then TEMPRP = “Seratus “
9 If fix(Mid(MAXDIGIT, 1 + (3 * i), 1)) > 1 Then TEMPRP = ANGKA(Mid(MAXDIGIT, 1 + (3 * i), 1)) & “ratus “
10 If fix(Mid(MAXDIGIT, 2 + (3 * i), 2)) < 20 Then TEMPRP = TEMPRP & ANGKA(Mid(MAXDIGIT, 2 + (3 * i), 2))
11 If fix(Mid(MAXDIGIT, 2 + (3 * i), 2)) >= 20 Then TEMPRP = TEMPRP & ANGKA(Mid(MAXDIGIT, 2 + (3 * i), 1)) & “puluh ” & ANGKA(Mid(MAXDIGIT, 3 + (3 * i), 1))
12 BERILEVEL:
13 If TEMPRP <> “” Then TEMPRP = TEMPRP & LEVEL(i)
14 If TEMPRP = “Satu Ribu ” Then TEMPRP = “Seribu “
15 TERBOC =TERBOC & TEMPRP
16 Next i
17 If Abs(x) > 99999999999999 Then TERBOC=”#MAX 14 DIGIT#”
18 If Abs(fix(x)) = 0 Then TERBOC = “Nol “
19 If x < 0 Then TERBOC = “Minus “&TERBOC
20 End Function

Ndak puWas dengan fungsi bikinan saya … saya coba2 cari menu add-in di OpenOffice … hasilnya saya nemu yang namanya Extension Manager … langsung saja meluncur ke http://www.openoffice.org/ … hasilnya saya nemu extension yang namanya NUMBERTEXT saya pikir ini extension untuk bahasa inggris tetapi setelah saya baca ternyata bahasa indonesia juga didukung … langsung aja donloth filenya disini

selesE donloth saya pasang di OpenOffice saya dengan cara klik menu Tools>>Extensions Manager>> Add … cari file hasil unduhan tadi (numbertext-0.9.4.oxt) … klik Open … tunggu sampE selesE dipasang Extension-nya … lalu close

setelah itu saya coba test

Cell A1 ketikkan 123 ; cell B1 ketikkan =NUMBERTEXT(A1) ; hasilnya seratus dua puluh tiga

Cell A2 ketikkan 123,45 ; cell B2 ketikkan =NUMBERTEXT(A2) ; hasilnya seratus dua puluh tiga koma empat lima

Cell A3 ketikkan 123 ; cell B3 ketikkan =MONEYTEXT(A3;”IDR”;”id_ID”) ; hasilnya seratus dua puluh tiga rupiah

Cell A4 ketikkan 123,45 ; cell B4 ketikkan =MONEYTEXT(A4;”IDR”;”id_ID”) ; hasilnya seratus dua puluh tiga rupiah dan empat puluh lima sen

Cell A5 ketikkan 123 ; cell B5 ketikkan =MONEYTEXT(A5;”GBP”;”en_EN”) ; hasilnya one hundred and twenty-three pounds sterling

Cell A6 ketikkan 123,45 ; cell B6 ketikkan =MONEYTEXT(A6;”GBP”;”en_EN”) ; hasilnya one hundred and twenty-three pounds sterling and forty-five pence

Cell A7 ketikkan 123 ; cell B7 ketikkan =MONEYTEXT(A7;”USD”;”en_US”) ; hasilnya one hundred and twenty-three U.S. dollars

Cell A8 ketikkan 123,45 ; cell B8 ketikkan =MONEYTEXT(A8;”USD”;”en_US”) ; hasilnya one hundred and twenty-three U.S. dollars and forty-five cents

extension ini sangat lengkap, banyak bahasa dan satuan mata uang yang didukung, bisa menangani angka2 pecahan … selamat mencoba … smoga bermanpaat … dan sekali lagi MDLMDL(Monggo Dipun Leresaken Menawi Dalem Lepat)


eXTENSION Cell A1 ketikkan 123 ; cell b1 ketikkan =NUMBERTEXT(A1) ; hasilnya seratus dua puluh tiga
Cell A2 ketikkan 123,45 ; cell b2 ketikkan =NUMBERTEXT(A2) ; hasilnya seratus dua puluh tiga koma empat lima
Cell A3 ketikkan 123 ; cell b3 ketikkan =MONEYTEXT(A3;”IDR”;”id_ID”) ; hasilnya seratus dua puluh tiga rupiah
Cell A4 ketikkan 123,45 ; cell b4 ketikkan =MONEYTEXT(A4;”IDR”;”id_ID”) ; hasilnya seratus dua puluh tiga rupiah dan empat puluh lima sen
Cell A5 ketikkan 123 ; cell b5 ketikkan =MONEYTEXT(A5;”GBP”;”en_EN”) ; hasilnya one hundred and twenty-three pounds sterling
Cell A6 ketikkan 123,45 ; cell b6 ketikkan =MONEYTEXT(A6;”GBP”;”en_EN”) ; hasilnya one hundred and twenty-three pounds sterling and forty-five pence
Cell A7 ketikkan 123 ; cell b7 ketikkan =MONEYTEXT(A7;”USD”;”en_US”) ; hasilnya one hundred and twenty-three U.S. dollars
Cell A8 ketikkan 123,45 ; cell b8 ketikkan =MONEYTEXT(A8;”USD”;”en_US”) ; hasilnya one hundred and twenty-three U.S. dollars and forty-five cents
About these ads
  1. 22 November 2010 pukul 2:13 pm

    hhmm salam kenal mas

    saya musti belajar banyak dari sini

    makasih

    • 25 November 2010 pukul 4:38 pm

      biasa aja pak :wink: … blog saya ini malah kalah hits dibanding punya bapak

  2. 24 November 2010 pukul 8:38 am

    Absen sajah gan… :mrgreen:

    • 25 November 2010 pukul 4:37 pm

      trimakasih kunjungan baliknya

  3. meong
    21 Desember 2010 pukul 11:39 am

    kok aku coba pake Moneytex yg indonesia -IDR- gak bs ya? tetep keluarnya bhs inggris.
    mohon bantuannya…

    • 21 Desember 2010 pukul 3:19 pm

      formula2 contoh diatas sudah saya coba dan bisa … mungkin regional/local setting PC anda belum di rubah ke indonesia

  4. 8 Juni 2012 pukul 9:10 am

    mas…
    gmn mengaplikasikan fungsi terbilang untk bilangan yg dibulatkan?
    cnth; 66,6 jadi 67….tp klo diterjemahkan dng fungsi terbilang jadinya “enam ribu enam ratus enam”…
    plees ya…
    lg bikin raport siswa..

  5. 9 Agustus 2012 pukul 1:20 pm

    Dim angka as variant
    angka = Array(“”,”Satu”,”Dua”,”Tiga”,”Empat”,”Lima”,”Enam”,_
    “Tujuh”,”Delapan”,”Sembilan”,”Sepuluh”,”Sebelas”)
    nilai = abs(nilai)
    If nilai<12 Then
    terbilang = " " & angka(nilai)
    Elseif nilai<20 Then
    terbilang = terbilang(nilai – 10) &" Belas"
    Elseif nilai<100 Then
    terbilang = terbilang(fix(nilai/10))& " Puluh" & terbilang(nilai mod 10)
    Elseif nilai<200 Then
    terbilang = " Seratus" & terbilang(nilai mod 100)
    Elseif nilai<1000 Then
    terbilang = terbilang(Fix(nilai/100)) & " Ratus" & terbilang(nilai mod 100)
    Elseif nilai<2000 Then
    terbilang = " Seribu" & terbilang(nilai mod 1000)
    Elseif nilai<1000000 Then
    terbilang = terbilang(Fix(nilai/1000)) & " Ribu" & terbilang(nilai mod 1000)
    Elseif nilai<1000000000 Then
    terbilang = terbilang(Fix(nilai/1000000)) & " Juta" &_
    terbilang(nilai-(Fix(nilai/1000000)*1000000))
    Elseif nilai<1000000000000 Then
    terbilang = terbilang(Fix(nilai/1000000000)) & " Milyar" &_
    terbilang(nilai-(Fix(nilai/1000000000)*1000000000))
    Elseif nilai<1000000000000000 Then
    terbilang = terbilang(Fix(nilai/1000000000000)) & " Trilyun" &_
    terbilang(nilai-(Fix(nilai/1000000000000)*1000000000000))
    Else
    terbilang = "Terlalu banyak :)"
    EndIf

    • 9 Agustus 2012 pukul 2:26 pm

      lumayan panjang jugak kodenya :smile:

  1. 5 Januari 2011 pukul 3:16 pm

Berikan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Logout / Ubah )

Twitter picture

You are commenting using your Twitter account. Logout / Ubah )

Facebook photo

You are commenting using your Facebook account. Logout / Ubah )

Google+ photo

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

Ikuti

Get every new post delivered to your Inbox.

Bergabunglah dengan 433 pengikut lainnya.

%d blogger menyukai ini: