Dear Be-Excel,
Untuk mengisi waktu luang di malam minggu, saya mencoba me-lihat2 kembali 
warisan Alm. Mbak Siti (Senior kita).Di situ saya menemukan UDF untuk 
menghitung Penghasilan Kena Pajak, yang secara aturan dibulatkan kebawah (dalam 
ribuan).
Dalam Worksheet terlampir (saya revisi hanya untuk th 2009), beliau 
memperbandingkan hasil perhitungan UDF dengan Formula.
UDF nya adalah sebagai berikut:Option Explicit
Function fPPh21_2009(PhKP As Currency) As Currency   Dim LapisPh() As Currency  
 Dim Tarif() As Double 'mbak Siti pakai Single, saya ganti Double   Dim n As 
Integer, Lps, Trf   Dim pajak As Currency      Lps = Split("|50|250|500", "|")  
 ReDim LapisPh(1 To UBound(Lps))   For n = 1 To UBound(Lps): LapisPh(n) = 
Round((CLng(Lps(n)) * 10 ^ 6), 0): Next n      Trf = Split("/5/15/25/30", "/")  
 ReDim Tarif(1 To UBound(Trf))   For n = 1 To UBound(Trf): Tarif(n) = 
Round((CDbl(Trf(n)) / 100), 2): Next n 'Sng saya ganti Dbl   PhKP = 1000 * 
Round(PhKP / 1000, 0)      Select Case PhKP      Case Is <= LapisPh(1)         
pajak = PhKP * Tarif(1)      Case Is <= LapisPh(2)         pajak = LapisPh(1) * 
Tarif(1) _         + (PhKP - LapisPh(1)) * Tarif(2)      Case Is <= LapisPh(3)  
       pajak = LapisPh(1) * Tarif(1) _         + (LapisPh(2) - LapisPh(1)) * 
Tarif(2) _         + (PhKP - LapisPh(2)) * Tarif(3)      Case Is > LapisPh(3)   
      pajak = (LapisPh(1)) * Tarif(1) _         + (LapisPh(2) - LapisPh(1)) * 
Tarif(2) _         + (LapisPh(3) - LapisPh(2)) * Tarif(3) _         + (PhKP - 
LapisPh(3)) * Tarif(4)   End Select   fPPh21_2009 = Round(pajak)End Function
Formula pada baris 12 dan 13 adalah 
sbb:=IF(C12<=0,0,IF(C12<=50000000,5%*C12,IF(C12<=250000000,50000000*5%+(C12-50000000)*15%,IF(C12<=500000000,50000000*5%+200000000*15%+(C12-250000000)*25%,50000000*5%+200000000*15%+250000000*25%+(C12-500000000)*30%))))

=IF(C13<=0,0,IF(C13<=50000000,5%*C13,IF(C13<=250000000,50000000*5%+(C13-50000000)*15%,IF(C13<=500000000,50000000*5%+200000000*15%+(C13-250000000)*25%,50000000*5%+200000000*15%+250000000*25%+(C13-500000000)*30%))))

Hasilnya seharusnya sama tapi berbeda beberapa ratus rupiah hanya pada kedua 
baris ini.
Pertanyaan saya (bukan ngetes):Apa yang menyebabkan terjadinya perbedaan tsb ?
Untuk lebih jelasnya saya lampirkan workbooknya.
Terima kasih.
Salam,HK





Attachment: UDF_fPPh21 (Rev by HK - Single to Double).xls
Description: MS-Excel spreadsheet

Kirim email ke