Title: Permasalahan Excel

Mas Yoki

 

Saya kirimkan kembali apa yang saya dapat dari rekan-rekan milis ini.

 

 

 


From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Niceguys
Sent: Thursday, June 30, 2005 3:35 PM
To: milis-komputeraktif List Member
Subject: [milis-komputeraktif] Permasalahan Excel (Terbilang) {01}

 

Pertama :

Buka Excelnya

 

Kedua :

Tekan Alt+F11

 

Ketiga:

On the INSERT menu click MODULE

 

Keempat:

Masukkan listing berikut ini : (bisa copy paste)

 

Option Explicit
'Main Function
Function SpellNumber(ByVal MyNumber)
    Dim Dollars, Cents, Temp
    Dim DecimalPlace, Count
    ReDim Place(9) As String
    Place(2) = " Thousand "
    Place(3) = " Million "
    Place(4) = " Billion "
    Place(5) = " Trillion "
    ' String representation of amount.
    MyNumber = Trim(Str(MyNumber))
    ' Position of decimal place 0 if none.
    DecimalPlace = InStr(MyNumber, ".")
    ' Convert cents and set MyNumber to dollar amount.
    If DecimalPlace > 0 Then
        Cents = GetTens(Left(Mid(MyNumber, DecimalPlace + 1) & _
                  "00", 2))
        MyNumber = Trim(Left(MyNumber, DecimalPlace - 1))
    End If
    Count = 1
    Do While MyNumber <> ""
        Temp = GetHundreds(Right(MyNumber, 3))
        If Temp <> "" Then Dollars = Temp & Place(Count) & Dollars
        If Len(MyNumber) > 3 Then
            MyNumber = Left(MyNumber, Len(MyNumber) - 3)
        Else
            MyNumber = ""
        End If
        Count = Count + 1
    Loop
    Select Case Dollars
        Case ""
            Dollars = "No Dollars"
        Case "One"
            Dollars = "One Dollar"
         Case Else
            Dollars = Dollars & " Dollars"
    End Select
    Select Case Cents
        Case ""
            Cents = " and No Cents"
        Case "One"
            Cents = " and One Cent"
              Case Else
            Cents = " and " & Cents & " Cents"
    End Select
    SpellNumber = Dollars & Cents
End Function

 

' Converts a number from 100-999 into text
Function GetHundreds(ByVal MyNumber)
    Dim Result As String
    If Val(MyNumber) = 0 Then Exit Function
    MyNumber = Right("000" & MyNumber, 3)
    ' Convert the hundreds place.
    If Mid(MyNumber, 1, 1) <> "0" Then
        Result = GetDigit(Mid(MyNumber, 1, 1)) & " Hundred "
    End If
    ' Convert the tens and ones place.
    If Mid(MyNumber, 2, 1) <> "0" Then
        Result = Result & GetTens(Mid(MyNumber, 2))
    Else
        Result = Result & GetDigit(Mid(MyNumber, 3))
    End If
    GetHundreds = Result
End Function

 

' Converts a number from 10 to 99 into text.
Function GetTens(TensText)
    Dim Result As String
    Result = ""           ' Null out the temporary function value.
    If Val(Left(TensText, 1)) = 1 Then   ' If value between 10-19...
        Select Case Val(TensText)
            Case 10: Result = "Ten"
            Case 11: Result = "Eleven"
            Case 12: Result = "Twelve"
            Case 13: Result = "Thirteen"
            Case 14: Result = "Fourteen"
            Case 15: Result = "Fifteen"
            Case 16: Result = "Sixteen"
            Case 17: Result = "Seventeen"
            Case 18: Result = "Eighteen"
            Case 19: Result = "Nineteen"
            Case Else
        End Select
    Else                                 ' If value between 20-99...
        Select Case Val(Left(TensText, 1))
            Case 2: Result = "Twenty "
            Case 3: Result = "Thirty "
            Case 4: Result = "Forty "
            Case 5: Result = "Fifty "
            Case 6: Result = "Sixty "
            Case 7: Result = "Seventy "
            Case 8: Result = "Eighty "
            Case 9: Result = "Ninety "
            Case Else
        End Select
        Result = Result & GetDigit _
            (Right(TensText, 1))  ' Retrieve ones place.
    End If
    GetTens = Result
End Function

 

' Converts a number from 1 to 9 into text.
Function GetDigit(Digit)
    Select Case Val(Digit)
        Case 1: GetDigit = "One"
        Case 2: GetDigit = "Two"
        Case 3: GetDigit = "Three"
        Case 4: GetDigit = "Four"
        Case 5: GetDigit = "Five"
        Case 6: GetDigit = "Six"
        Case 7: GetDigit = "Seven"
        Case 8: GetDigit = "Eight"
        Case 9: GetDigit = "Nine"
        Case Else: GetDigit = ""
    End Select
End Function

Kelima :

Sebagai Contoh di cell A1 tulis angka 100000

dan di cel A2 tulis rumus =spellnumber(A1)

maka di kolom A2 akan tertulis terbilangnya "seratus ribu rupiah"

 

Semoga bisa membantu

 

----- Original Message -----

Sent: Thursday, June 30, 2005 2:07 PM

Subject: [milis-komputeraktif] Permasalahan Excel {01}

 

Rekan-rekan Milis

Saya mengalami kesulitan untuk mengubah angka nominal menjadi angka kardinal dalam Microsoft Excel (mis. “Rp 4.500.000” menjadi “Empat Juta Limaratus Ribu Rupiah”).  Apakah ada teman-teman yang pernah mengalami masalah serupa dan sudah mendapatkan pemecahannya? (tanpa harus melakukan programming dengan VBA). Saya pernah melihat fungsi =BAHTTEXT(), tapi belum menemukan fungsi serupa untuk mata uang lain.  Logikanya kalau dengan alfabet Thai yang “rumit” bisa, tentunya dengan alfabet internasional standar yang lain juga bisa.

Saya pernah membaca kalau di MailMerge untuk Microsoft Word, cukup menambah switch *\CardText, tapi bagaimana dengan program Microsoft Excel ya? Sekali lagi saya ucapkan terima kasih atas bantuannya.

Wahyu Widodo -

 
 
 
=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=
 
Mailing List KomputerAktif
milis-komputeraktif@news.gramedia-majalah.com
 
Arsip
http://www.mail-archive.com/milis-komputeraktif@news.gramedia-majalah.com/
------------------------------------------------
 
untuk berlangganan kirim mail kosong ke :
[EMAIL PROTECTED]
 
untuk berhenti berlangganan kirim mail kosong ke:
[EMAIL PROTECTED]
 

 
 
 
 
=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=
 
Mailing List KomputerAktif
milis-komputeraktif@news.gramedia-majalah.com
 
Arsip
http://www.mail-archive.com/milis-komputeraktif@news.gramedia-majalah.com/
------------------------------------------------
 
untuk berlangganan kirim mail kosong ke :
[EMAIL PROTECTED]
 
untuk berhenti berlangganan kirim mail kosong ke:
[EMAIL PROTECTED]
 



=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+

Mailing List KomputerAktif
milis-komputeraktif@news.gramedia-majalah.com

Arsip
http://www.mail-archive.com/milis-komputeraktif@news.gramedia-majalah.com/
------------------------------------------------

untuk berlangganan kirim mail kosong ke :
[EMAIL PROTECTED]

untuk berhenti berlangganan kirim mail kosong ke:
[EMAIL PROTECTED]

Kirim email ke