Hai Vincent, Kalau saya lihat struktur vba-nya fungsi hutang hanya menghitung angka yang jika x lebih besar dari 500000000. Sedangkan jika x kurang dari 500000000 fungsi hutang tidak menghitung, maka hasilnya #value! Mungkin sebaiknya "end if" diletakkan seperti ini :
If x > 500000000 Then x = x - 500000000 end if -----Original Message----- From: vincent Yoes <[email protected]> Sender: [email protected] Date: Wed, 16 Oct 2013 03:54:55 To: <[email protected]> Reply-To: [email protected] Subject: ]] XL-mania [[ Rumus If x > ...(currency) = #value! [1 Attachment] Dear rekan2 Exceller macro vba dibawah ini kenapa ya hasilnya jika 500000000 kebawah currency dalam bentuk angka namun jika 500000000 keatas hasilnya tidak dalam bentuk currency namun #value! Public Function hutang(x As Currency) Dim hasil As Currency Dim hasila As Currency Dim hasilb As Currency Dim hasilc As Currency Dim hasild As Currency If x > 500000000 Then x = x - 500000000 hasila = 25000000 * 5 / 100 hasilb = 50000000 * 10 / 100 hasilc = 500000000 * 15 / 100 hasild = x * 25 / 100 hasil = hasila + hasilb + hasilc + hasild End If hutang = hasil End Function berikut format excelnya saya lampirkan. mohon pencerahannya rekan2 Exceller... atas bantuannya saya ucapkan terima kasih....... Vincent

