Saya coba2 mencari di internet dan menemukan sebuah blog yang membahas membuat fungsi menggunakan makro di spreadsheet
http://krist-ha.blogspot.c
Saya tuliskan kembali :
Setelah masuk ke OpenOffice.org Spreadsheet klik menu Tools > Macros > Organize Macros > OpenOffice.org Basic
Pada kotak dialog OpenOffice.org Basic, pilih makro dari My Macros > Standard, kemudian klik tombol New
Masukkan kode di bawah ini ke halaman editor
Hapus saja jika masih berisi kode
Kode yang harus Anda masukkan adalah sebagai berikut:
Function Kekata(Bilangan as double) As String
Dim angka as variant
angka = Array("","satu","dua","tiga","empat","lima","enam","tujuh","delapan","sembilan","sepuluh","sebelas")
Bilangan = abs(Fix(Bilangan))
If Bilangan<12>
Kekata = " " & angka(Bilangan)
Elseif Bilangan<20>
Kekata = Kekata(Bilangan - 10) & " belas"
Elseif Bilangan<100>
Kekata = Kekata(Fix(Bilangan/10)) & " puluh" & Kekata(Bilangan mod 10)
Elseif Bilangan<200>
Kekata = " seratus" & Kekata(Bilangan mod 100)
Elseif Bilangan<1000>
Kekata = Kekata(Fix(Bilangan/100)) & " ratus" & Kekata(Bilangan mod 100)
Elseif Bilangan<2000>
Kekata = " seribu" & Kekata(Bilangan mod 1000)
Elseif Bilangan<1000000>
Kekata = Kekata(Fix(Bilangan/1000)) & " ribu" & Kekata(Bilangan mod 1000)
Elseif Bilangan<1000000000>
Kekata = Kekata(Fix(Bilangan/1000000)) & " juta" &_
Kekata(Bilangan- (Fix(Bilangan/1000000)*1000000))
Elseif Bilangan<1000000000000>
Kekata = Kekata(Fix(Bilangan/1000000000)) & " milyar" &_
Kekata(Bilangan- (Fix(Bilangan/1000000000)*1000000000))
Elseif Bilangan<1000000000000000>
Kekata = Kekata(Fix(Bilangan/1000000000000)) & " trilyun" &_
Kekata(Bilangan- (Fix(Bilangan/1000000000000)*1000000000000))
Else
Kekata = "Error! Input Tidak Dapat Diproses."
EndIf
End Function
Function Terbilang(Bilangan as Double, Optional Style as Integer) as String
Dim temp as String
If Bilangan<0>
temp = "Minus " & trim(kekata(Bilangan))
Else
temp = trim(kekata(Bilangan))
EndIf
If Style=1 Then
Terbilang = ucase(temp)
ElseIf Style=2 Then
Terbilang = lcase(temp)
ElseIf Style=3 Then
kata = split(temp)
l = LBound(kata)
u = UBound(kata)
For i=l to u
kata(i) = ucase(mid(kata(i),1,1)) & mid(kata(i),2)
Next i
Terbilang = join(kata())
Else
Terbilang = ucase(mid(temp,1,1)) & mid(temp,2)
EndIf
End Function
Silahkan tes
Cara penggunaan Fungsi tersebut adalah:
=terbilang(cell;style)
If Bilangan<12>
Kekata = " " & angka(Bilangan)
Elseif Bilangan<20>
Kekata = Kekata(Bilangan - 10) & " belas"
Elseif Bilangan<100>
Kekata = Kekata(Fix(Bilangan/10)) & " puluh" & Kekata(Bilangan mod 10)
Elseif Bilangan<200>
Kekata = " seratus" & Kekata(Bilangan mod 100)
Elseif Bilangan<1000>
Kekata = Kekata(Fix(Bilangan/100)) & " ratus" & Kekata(Bilangan mod 100)
Elseif Bilangan<2000>
Kekata = " seribu" & Kekata(Bilangan mod 1000)
Elseif Bilangan<1000000>
Kekata = Kekata(Fix(Bilangan/1000))
Elseif Bilangan<1000000000>
Kekata = Kekata(Fix(Bilangan/100000
Kekata(Bilangan- (Fix(Bilangan/1000000)*100
Elseif Bilangan<1000000000000>
Kekata = Kekata(Fix(Bilangan/100000
Kekata(Bilangan- (Fix(Bilangan/1000000000)*
Elseif Bilangan<1000000000000000>
Kekata = Kekata(Fix(Bilangan/100000
Kekata(Bilangan- (Fix(Bilangan/100000000000
Else
Kekata = "Error! Input Tidak Dapat Diproses."
EndIf
End Function
Function Terbilang(Bilangan as Double, Optional Style as Integer) as String
Dim temp as String
If Bilangan<0>
temp = "Minus " & trim(kekata(Bilangan))
Else
temp = trim(kekata(Bilangan))
EndIf
If Style=1 Then
Terbilang = ucase(temp)
ElseIf Style=2 Then
Terbilang = lcase(temp)
ElseIf Style=3 Then
kata = split(temp)
l = LBound(kata)
u = UBound(kata)
For i=l to u
kata(i) = ucase(mid(kata(i),1,1)) & mid(kata(i),2)
Next i
Terbilang = join(kata())
Else
Terbilang = ucase(mid(temp,1,1)) & mid(temp,2)
EndIf
End Function
Silahkan tes
Cara penggunaan Fungsi tersebut adalah:
=terbilang(cell;style)
0 komentar:
Posting Komentar
Tinggalkan komentar Anda disini. Terima kasih, salam LINUX...!!!