1.Hazırlık
Bu yazımda kademeli vergi oranlarına göre toplam gelir vergisi hesaplama üzerine bir kaç uygulama yapmak istiyorum. Bildiğiniz gibi ülkemizde tarifeli vergi oranları mevcut ve gelir arttıkça artan oranda gelir vergisi ödüyorsunuz. Öncelikle internetten gelir vergisi oranlarını 2020 yılı için bularak aşağıdaki tabloyu hazırladım:
Gelir | 55.000 | |
Alt Sınır | Üst Sınır | Vergi Oranı |
0 | 22.000 | %15 |
22.000 | 49.000 | %20 |
49.000 | 180.000 | %27 |
180.000 | 600.000 | %35 |
600.000 | %40 |
Ben yukarıdaki tabloyu B2:E10 aralığında oluşturdum. Formüllerdeki hücre başvurularını buna göre oluşturdum. Siz farklı bu tabloyu farklı bir alanda oluşturursanız hücre adreslerini bu yeni aralığa göre güncelleyin.
Bu yazımda kullandığım formülleri içeren Excel kitabına buradan erişebilirsiniz.
2. DüşeyAra İşlevi İle
Burada yapmak istediğim ilk şey önceki vergi dilimlerinden, gelirin içinde olduğu basamağa kadar olan, yani önceki basamaklar nedeni ile oluşan vergiyi bulmak. Sonrasında DüşeyAra işlevini kullanarak gelirin hangi basamağa denk geldiğini bulmak ve bu basamağın vergi oranını çekerek o basamakta oluşan vergiyi hesaplamak. Sonrasında önceki adımlarda oluşan vergiyi bu değere ekleyerek toplam vergiyi bulmak.
a. Hazırlık
DüşeyAra işlevi ile hesaplama yapabilmek için bizim ek değerlere ihtiyacımız var. Bu ek değerler her adımda, önceki adımlardaki basamaklara denk gelen toplam vergi yani yığılmalı vergi değerleri olacak. Kullanacağım formül:
=(Üst Sınır-Alt Sınır)*Vergi Oranı+Önceki Vergi
Burada anahtar kelime önceki vergi basamakları olduğundan bu formülü içinde bulunduğum satır için değil, bir önceki satırlardaki değerleri dikkate alarak yazmam gerek. Tabii ilk vergi diliminde ödenen yığılmalı vergi olmadığından buraya yazılacak değer 0. Benim tablomda ilk basamak E satırında olduğundan E7 hücresine 0 değerini yazıyorum.
Bir alt hücreye, yani E8 hücresine ise ise üstteki formülü yazacağım, Üst sınırın C, alt sınırın B ve vergi oranının D sütununda olduğu için formül şu şekilde oluşacak:
=(C7-B7)*D7+E7
Bu formülü tüm vergi adımlarını içerecek şekilde aşağıya doğru sürüklediğimde elimde aşağıdaki tablo oluşacak.
Gelir | 55.000 | ||
Vergi | |||
Alt Sınır | Üst Sınır | Vergi Oranı | Yığılmış Vergi |
0 | 22.000 | 15% | 0 |
22.000 | 49.000 | 20% | 3.300 |
49.000 | 180.000 | 27% | 8.700 |
180.000 | 600.000 | 35% | 44.070 |
600.000 | 40% | 191.070 |
b. Vergi Hesaplama
Bundan sonraki aşamada DüşeyAra ile gelirin tam olarak hangi basamağa denk geldiğini bulacağız. DüşeyAra eğer aradığımız değer sıralanmış listede bulunmuyor ise ona en yakın küçük değeri bulabiliyordu. Burada bu özelliği kullanacağız. Önce gelirin denk geldiği basamağın alt sınırını çekelim:
=DÜŞEYARA($C$2;$B$7:$E$11;1;2)
Formülün sonundaki 2 değerine dikkat edin, bu değer aranan rakam listede mevcut değil ise yakın düşük değeri buluyor idi. Bu formül tablodaki gelir değerine göre 49.000 değerini bulacaktır. Bizim gelirimiz de zaten bu aralığa denk geliyor.
İkinci olarak bu aralığa denk gelen vergi oranını bulacağım. Aynı işlev ile farklı sütundaki veriyi döndüreceğim:
=DÜŞEYARA($C$2;$B$7:$E$11;3;2)
Şimdi yapmam gereken şey bu aralığa denk gelen vergiyi bulmak. Bunu da (Gelir-Alt Sınır)*Vergi Oranı formülü ile yapacağım:
=($C$2-DÜŞEYARA($C$2;$B$7:$E$11;1;2))*DÜŞEYARA($C$2;$B$7:$E$11;3;2)
Elde ettiğim değer 1.620. Son olarak önceki adımlardaki toplam vergiyi bu değere ekleyeceğim. Toplam vergiyi bulmak için yine DüşeyAra formülü ile en son sütundaki değeri çekeceğim:
=DÜŞEYARA($C$2;$B$7:$E$11;4;2)
Bu değeri, bir önceki formül ile bulduğum değere ekliyorum:
=($C$2-DÜŞEYARA($C$2;$B$7:$E$11;1;2))*DÜŞEYARA($C$2;$B$7:$E$11;3;2)+ DÜŞEYARA($C$2;$B$7:$E$11;4;2)
Formül sonucu 10.320 olarak toplam ödenmesi gereken vergi olarak karşımıza çıkıyor.
3. ToplaÇarpım İle
a. İşlem Açıklaması
Topla.Çarpım işlevi girdiğimi iki aralıktaki değerleri sırası ile çarpıp toplamını bize veren bir formül idi. Bunu yapabilmek için yine yardımcı bir sütuna ihtiyacımız var. Şöyle ki vergiye tabi gelir 55.000 lira olduğunu varsayalım, bu 55.000 liranın tamamına ilk basamaktaki oran olan %15 vergi gelmekte. Bir üst basamakta alt sınır 22.000 lira olduğundan 55.000 liranın bu miktar üzerinde kalan kısmına ek %5 vergi daha gelmekte çünkü iki dilim arasındaki vergi oranı farkı %5. Bunu vergi farkını tüm basamaklar için hesaplamamız gerekiyor.
Gelir | 55.000 | ||
Vergi | |||
Alt Sınır | Üst Sınır | Vergi Oranı | Oran Fark |
0 | 22.000 | 15% | 15% |
22.000 | 49.000 | 20% | 5% |
49.000 | 180.000 | 27% | 7% |
180.000 | 600.000 | 35% | 8% |
600.000 | 40% | 5% |
Sonrasında gelirimizin ne kadarlık bir kısmı bu oran ile çarpılacak bunu hesaplamamız gerek. Bunun için gelir ile basamak alt sınırının farkını almamız gerek. Bunu:
=$C$2-$B6
formülünü F6 hücresine yazıp aşağıya doğru sürükleyerek yapıyorum ve elimde aşağıdaki tablo oluşuyor.
Gelir | 55.000 | |||
Vergi | ||||
Alt Sınır | Üst Sınır | Vergi Oranı | Oran Fark | Gelir Fark |
0 | 22.000 | 15% | 15% | 55.000 |
22.000 | 49.000 | 20% | 5% | 33.000 |
49.000 | 180.000 | 27% | 7% | 6.000 |
180.000 | 600.000 | 35% | 8% | -125.000 |
600.000 | 40% | 5% | -545.000 |
burada gördüğünüz gibi negatif sayılar oluştu. Bunları hesaba katmayacağız. Bunun için de gelirin, basamak alt sınırından büyük olup olmadığını kontrol etmemiz gerekiyor. Eğer büyük değil ise 0 değeri döndürsün, bunu da aşağıdaki formül ile yapacağım.
=($C$2>$B6)*($C$2-$B6)
Bu formülü de yazıp alta kadar sürüklediğimde tablom aşağıdaki hale geliyor.
Gelir | 55.000 | |||
Vergi | ||||
Alt Sınır | Üst Sınır | Vergi Oranı | Oran Fark | Gelir Fark |
0 | 22.000 | 15% | 15% | 55.000 |
22.000 | 49.000 | 20% | 5% | 33.000 |
49.000 | 180.000 | 27% | 7% | 6.000 |
180.000 | 600.000 | 35% | 8% | 0 |
600.000 | 40% | 5% | 0 |
Bundan sonra yapacağım işlem gelir farkı ile oran farkı sütunun çarparak çıkan sonucun toplamını bulmak
Gelir | 55.000 | ||||
Vergi | |||||
Alt Sınır | Üst Sınır | Vergi Oranı | Oran Fark | Gelir Fark | Vergi |
0 | 22.000 | 15% | 15% | 55.000 | 8.250 |
22.000 | 49.000 | 20% | 5% | 33.000 | 1.650 |
49.000 | 180.000 | 27% | 7% | 6.000 | 420 |
180.000 | 600.000 | 35% | 8% | 0 | 0 |
600.000 | 40% | 5% | 0 | 0 | |
Toplam | 10.320 |
b. Topla.Çarpım Formülü İle Yazma
Açıklama biraz uzun oldu. Ancak Topla.Çarpım formülü ile bunu tek adımda yapacağız. Öncelikle gelirin hangi basamağın alt diliminden büyük olduğunu bulmak için:
=–($C$2>$B$6:$B$10)
Formülünü kullanacağım. Bu formül ile {Doğru, Doğru, Doğru, Yanlış, Yanlış} şeklinde bir değerler dizisi elde ediyorum. Başındaki iki — işareti ile de bunu {1,1,1,0,0} şeklinde rakamlardan oluşan bir diziye çeviriyorum. Şimdi bana gelir ile basamak alt sınırı arasındaki fark lazım:
=($C$2-$B$6:$B$10)
Bütün bu değerleri oran farkı sütunundaki değerler ile çarparak toplamını alacağım:
=TOPLA.ÇARPIM(–($C$2>$B$6:$B$10);($C$2-$B$6:$B$10);$E$6:$E$10)
Formülü yazıp çalıştırdığınızda 10.320 değerini elde edeceksiniz.
Her ne kadar işlem adımları karmaşık gözükse bile TOPLA.ÇARPIM işlevinin sunduğu kolaylık ile hızlıca ve tek adımda istediğimiz değeri elde edebildik.
Toplam matrahı dikkate almadan hesaplama yanlış olur.