Minggu, 26 Mei 2019

[belajar-excel] Digest Number 4773

1 Message

Digest #4773
1a
Fw: [belajar-excel] UDF PPh21 by "hendrik karnadi" hendrikkarnadi

Message

Sun May 26, 2019 8:53 pm (PDT) . Posted by:

"hendrik karnadi" hendrikkarnadi

Betul Mr Kid, pasti ada yang salah.....
Rasa penasaran telah terselesaikan dengan mengubah formula di UDF dari :PhKP = 1000 * Round(PhKP / 1000, 0)menjadi PhKP = WorksheetFunction.RoundDown(PhKP, -3)
(sesuai pembulatan dalam formula)
Saya kutip juga penjelasan yang diberikan oleh mas NangAgus berikut ini :Yang salah hanya yang datanya memiliki tiga digit terakhir lebih dari 500;..> baris ke 12 3 digit terakhir= 565->baris ke 13: 3 digit terakhir = 987
Dengan fungsi Round, jika tiga angka terakhir 500 atau lebih maka angka PhKP akan dibulatkan ke atas (seribu)......Pada baris ke 12 tarip batas atasnya sdh mencapai 30% sehingga perhitungan UDF lebih besar 300.Pada baris ke 13 tarip batas atasnya masih 25% sehingga perhitungan UDF lebih besar 250 saja.

Dengan Fungsi RoundDown maka angka PhP selalu dibulatkan kebawah dalam ribuan (PhKP ,-3), sesuai peraturan pajak.
Sekali lagi terima kasih kepada Mr. Kid dan mas NangAgus atas pencerahannya..
Salam,HK

----- Forwarded message ----- From: 'Mr. Kid' mr.nmkid@gmail.com [belajar-excel] <belajar-excel@yahoogroups.com>To: BeExcel <belajar-excel@yahoogroups.com>Sent: Sunday, 26 May 2019, 10:34:13 pm GMT+7Subject: Re: [belajar-excel] UDF PPh21
 

Berarti,Kalau hitungan formulanya yang benar, maka penggunaan round di udf-nya yang salah.Kalau hitungan udf-nya yang benar, maka penggunaan round di formula-nya yang salah.
Simpelkan...

On Sun, May 26, 2019 at 9:48 PM hendrik karnadi hendrikkarnadi@yahoo.com [belajar-excel] <belajar-excel@yahoogroups.com> wrote:

 
Terima kasih atas jawabannya mas NangAgus.
Yang membuat saya masih penasaran adalah:Kan untuk perhitungan dengan UDF maupun formula...keduanya menggunakan dasar pehitungan yang sama, yaitu PhKP dibulatkan ke bawah dalam ribuan.
Salam,HK

Sent from Yahoo Mail on Android

On Sun, May 26, 2019 at 20:46, Agus nangagus@gmail.com [belajar-excel]<belajar-excel@yahoogroups.com> wrote:  

Pak Hendrik, Yang salah hanya yang datanya memiliki tiga digit terakhir lebih dari 500; ..> baris ke 12 3 digit terakhir= 565 ->baris ke 13: 3 digit terakhir = 987 Coba semua baris diberitiga digit terakhir lebih dari 500, akan menjadi berbeda semua salam NangAgus
On 5/26/2019 14:03, hendrik karnadi hendrikkarnadi@yahoo.com [belajar-excel] wrote:

 
Kayaknya sih memang masalah pembulatan Mr.Kid.
Yang membuat saya penasaran, mengapa hanya terjadi pada 2 baris itu saja.

Salam,
HK



Sent from Yahoo Mail on Android

On Sun, May 26, 2019 at 4:34, 'Mr. Kid' mr.nmkid@gmail.com [belajar-excel] <belajar-excel@yahoogroups.com> wrote:   Mungkin karena round

Sent from my smart enough phone
On May 25, 2019, at 20:48, hendrik karnadi hendrikkarnadi@yahoo.com [belajar-excel] <belajar-excel@yahoogroups.com> wrote:


  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







<UDF_fPPh21 (Rev by HK - Single to Double).xls>




============================================================
Pojok Lowongan Kerja yang disediakan milis :
http://milis-belajar-excel.1048464.n5.nabble.com/Pojok-Lowongan-Kerja-f5725753.html
*** Posting lowongan kerja : ke link tersebut dan klik New Topic
============================================================
bergabung ke milis (subscribe), kirim mail kosong ke: belajar-excel-subscribe@yahoogroups.com
posting ke milis, kirimkan ke: belajar-excel@yahoogroups.com
berkunjung ke web milis : http://tech.groups.yahoo.com/group/belajar-excel/messages
melihat file archive / mendownload lampiran : http://www.mail-archive.com/belajar-excel@yahoogroups.com/
atau (sejak 25-Apr-2011) bisa juga di : http://milis-belajar-excel.1048464.n5.nabble.com/
menghubungi moderators & owners: belajar-excel-owner@yahoogroups.com
keluar dari membership milis (UnSubscribe), kirim mail kosong ke : belajar-excel-unsubscribe@yahoogroups.com
---------------------------------------------------------------------

Tidak ada komentar:

Posting Komentar