Kamis, 04 November 2010

Fungsi Pecahan Uang

Fungsi ini digunakan untuk mengetahui rincian pecahan / recehan mata uang dari suatu nilai nominal uang. Misalkan nilai nominalnya 1550, maka rincian pecahannya adalah 1 Seribuan, 1 Lima ratusan, 1 Lima puluhan. Fungsi ini sangat cocok bila dipadukan dengan aplikasi pembayaran, semisal aplikasi kasir.

Buat sebuah Module baru dan ketikkan :
Dim Nominal(10) As Double, NamaNominal(10) As String

Public Function PecahanUang(ByVal Nilai As Double, Optional ByVal Pemisah As String = ", ") As String
Dim i As Integer, t As String, s As Double 'sisa

If Nominal(0) = 0 Then 'harus mulai dari yang terbesar s/d terkecil
Nominal(0) = 100000: NamaNominal(0) = "Seratus ribuan"
Nominal(1) = 50000: NamaNominal(1) = "Lima puluh ribuan"
Nominal(2) = 20000: NamaNominal(2) = "Dua puluh ribuan"
Nominal(3) = 10000: NamaNominal(3) = "Sepuluh ribuan"
Nominal(4) = 5000: NamaNominal(4) = "Lima ribuan"
Nominal(5) = 2000: NamaNominal(5) = "Dua ribuan"
Nominal(6) = 1000: NamaNominal(6) = "Seribuan"
Nominal(7) = 500: NamaNominal(7) = "Lima ratusan"
Nominal(8) = 200: NamaNominal(8) = "Dua ratusan"
Nominal(9) = 100: NamaNominal(9) = "Seratusan"
Nominal(10) = 50: NamaNominal(10) = "Lima puluhan"
End If

For i = 0 To UBound(Nominal)
If (Nilai >= Nominal(i)) Then
t = Format(Fix(Nilai / Nominal(i)), "#,#") & " " & NamaNominal(i)
s = Nilai - (Fix(Nilai / Nominal(i)) * Nominal(i))
Exit For
End If
Next

If (s <> 0) And (s >= Nominal(UBound(Nominal))) Then t = t & Pemisah & PecahanUang(s, Pemisah)

PecahanUang = t
End Function

Untuk menggunakannya ketikkan :
s = PecahanUang(5500)

Label: , , , ,

0 Komentar:

Posting Komentar

Pengunjung yang baik selalu meninggalkan jejak berupa komentar. :)

Berlangganan Posting Komentar [Atom]

<< Beranda