Sabtu, 20 November 2010

fungsi openoffice.org

Fungsi terbilang yang akan kita masukkan berikut mampu menerjemahkan bilangan sampai dengan ratusan trilyun dan belum mampu menerjemahkan nilai di belakang desimal (setelah koma). Saya menggunakan OpenOffice.org versi 2 beta, langkah-langkah yang saya lakukan untuk memasukkan fungsi terbilang pada OpenOffice.org Calc adalah:
1. Jalankan OpenOffice.org Calc, buka menu Tools ? Macros ? Organize Macros ? OpenOffice.org Basic..., sehingga muncul dialog box OpenOffice.org Basic.

2. Pada dialog box OpenOffice.org Basic, pilih makro dari My Macros ? Standard, kemudian klik tombol New.

3. Masukkan kode di bagian bawah halaman ini, dan copy paste-kan pada halaman editor yang muncul.

4. Uji pada sheet dengan memasukkan fungsi terbilangnya. Lihat contoh penggunaannya.

Kode
PLAIN TEXT
CODE:
1. Function Kekata(Bilangan as double) As String
2. Dim angka as variant
3.
4. angka = Array("","satu","dua","tiga","empat","lima","enam",_
5. "tujuh","delapan","sembilan","sepuluh","sebelas")
6. Bilangan = abs(Fix(Bilangan))
7. If Bilangan<12 Then
8. Kekata = " " & angka(Bilangan)
9. Elseif Bilangan<20 Then
10. Kekata = Kekata(Bilangan - 10) & " belas"
11. Elseif Bilangan<100 Then
12. Kekata = Kekata(Fix(Bilangan/10)) & " puluh" & Kekata(Bilangan mod 10)
13. Elseif Bilangan<200 Then
14. Kekata = " seratus" & Kekata(Bilangan mod 100)
15. Elseif Bilangan<1000 Then
16. Kekata = Kekata(Fix(Bilangan/100)) & " ratus" & Kekata(Bilangan mod 100)
17. Elseif Bilangan<2000 Then
18. Kekata = " seribu" & Kekata(Bilangan mod 1000)
19. Elseif Bilangan<1000000 Then
20. Kekata = Kekata(Fix(Bilangan/1000)) & " ribu" & Kekata(Bilangan mod 1000)
21. Elseif Bilangan<1000000000 Then
22. Kekata = Kekata(Fix(Bilangan/1000000)) & " juta" &_
23. Kekata(Bilangan- (Fix(Bilangan/1000000)*1000000))
24. Elseif Bilangan<1000000000000 Then
25. Kekata = Kekata(Fix(Bilangan/1000000000)) & " milyar" &_
26. Kekata(Bilangan- (Fix(Bilangan/1000000000)*1000000000))
27. Elseif Bilangan<1000000000000000 Then
28. Kekata = Kekata(Fix(Bilangan/1000000000000)) & " trilyun" &_
29. Kekata(Bilangan- (Fix(Bilangan/1000000000000)*1000000000000))
30. Else
31. Kekata = "Error! Input Tidak Dapat Diproses."
32. EndIf
33.
34. End Function
35.
36. Function Terbilang(Bilangan as Double, Optional Style as Integer) as String
37. Dim temp as String
38.
39. If Bilangan<0 Then
40. temp = "minus " & trim(kekata(Bilangan))
41. Else
42. temp = trim(kekata(Bilangan))
43. EndIf
44.
45. If Style=1 Then
46. Terbilang = ucase(temp)
47. ElseIf Style=2 Then
48. Terbilang = lcase(temp)
49. ElseIf Style=3 Then
50. kata = split(temp)
51. l = LBound(kata)
52. u = UBound(kata)
53. For i=l to u
54. kata(i) = ucase(mid(kata(i),1,1)) & mid(kata(i),2)
55. Next i
56. Terbilang = join(kata())
57. Else
58. Terbilang = ucase(mid(temp,1,1)) & mid(temp,2)
59. EndIf
60.
61. End Function
Penggunaan dan Contoh
=terbilang(bilangan; style)
bilangan adalah bilangan atau cell yang berisi bilangan yang akan diterjemahkan.
style adalah nilai integer yang sifatnya optional untuk mengatur output cara penulisan huruf besar atau kecilnya, dan jika tidak disertakan akan tertampil huruf besar pada awal kalimat saja.
Nilai style
1 = Ditulilis huruf besar semua;
2 = Ditulis huruf kecil semua;
3 = Huruf besar hanya pada awal kata saja;
Lainnya = Huruf besar pada awal kalimat saja.
Misalkan cell B1 diisi bilangan dengan nilai 25000 dan kita akan menuliskan hasilnya pada cell B2
=terbilang(B1)menghasilkan: Dua puluh lima ribu
=terbilang(B1;1)menghasilkan: DUA PULUH LIMA RIBU
=terbilang(B1;2)menghasilkan: dua puluh lima ribu
=terbilang(B1;3)menghasilkan: Dua Puluh Lima Ribu
=terbilang(B1;4)menghasilkan: Dua puluh lima ribu


Oleh : anom maulana
No : 7
Kelas : 9c

Tidak ada komentar:

Posting Komentar