Gelir Vergisi Hesaplama

Katılım
1 Mart 2011
Mesajlar
53
Excel Vers. ve Dili
Excel 2007
Makro kullanmadan Gelir Vergisi dilimlerine göre excel'de ödenecek vergi nasıl hesaplanır ?

- 9.400 TL'ye kadar % 15

- 23.000 TL'nin 9.400 TL'si için 1.410 TL, fazlası % 20

- 53.000 TL'nin 23.000 TL'si için 4.130 TL, (ücret gelirlerinde 80.000 TL'nin 23.000 TL'si için 4.130 TL), fazlası % 27

- 53.000 TL'den fazlasının 53.000 TL'si için 12.230 TL, (ücret gelirlerinde 80.000 TL'den fazlasının 80.000 TL'si için 19.520 TL), fazlası % 35

excel bilgim ile bir yerlere gelmeye çalıştım ancak vergi dilimlerinin oldukça karışık olması ilerlememi engelledi.

saygılar
 
Katılım
1 Mart 2011
Mesajlar
53
Excel Vers. ve Dili
Excel 2007
Merhaba,
Elimde İdris Serdar bey tarafından temin ettiğim sumproduct formüllü gelir vergisi hesaplaması var.
SUMPRODUCT(--("Kümüle GV">"GV1.Dilim ile GV4.Dilim");--("Kümüle GV"-"GV1.Dilim ile GV4.Dilim");--("GV1.Dilim Oranı ile GV4.Dilim Oranı"))-SUM("Ödenen Gelir Vergileri")
2020 yılından itibaren devreye girecek 5.Dilimin formüle etkisi nasıl olmalıdır?
Saygılarımla.
 

halit3

Uzman
Uzman
Katılım
18 Ocak 2008
Mesajlar
12,798
Excel Vers. ve Dili
2003 excell türkçe
ve
2007 excell türkçe
Alternatif olarak aşağıdaki linki irdeleyiniz
 
Katılım
24 Eylül 2019
Mesajlar
4
Excel Vers. ve Dili
2010 eng
Altın Üyelik Bitiş Tarihi
24-09-2020
calculation yapan hazır excel mevcut mudur ?
 

muygun

Özel Üye
Katılım
6 Temmuz 2004
Mesajlar
9,180
Excel Vers. ve Dili
Excel-2003 Türkçe
Alternatif olarak formülle çözüm:

A2 hücresinde matrah varsa;
=EĞER(A2<=22000;A2*0,15;EĞER(VE(22000<A2;A2<=49000);3300+((A2-22000)*0,2);EĞER(VE(49000<A2;A2<=120000);8700+((A2-49000)*0,27);EĞER(VE(120000<A2;A2<=600000);27870+((A2-120000)*0,35);EĞER(600000<A2;195870+((A2-600000)*0,4);"")))))

NOT: Doğruluğunu vergi konusunu bilen bir arkadaşın teyit etmesinde yarar var. (Bu konuda bilgim yok)
 

Ekli dosyalar

Katılım
1 Mart 2011
Mesajlar
53
Excel Vers. ve Dili
Excel 2007
Merhaba,
Emeğinize sağlık,
Formülasyonu 2019 için karşılaştırma amaçlı denedim,
İlk aylarda sorun görmedim ama benim örneğimde 100 Bin TL'yi aşan aydan sonra eksi değerler oluşuyor.
Sanırım son IF li kurguda bir hata var ama ben bulamadım.
IF(A6<=18000;A6*0,15;
IF(AND(18000<A6;A6<=40000);2700+((A6-18000)*0,2);
IF(AND(40000<A6;A6<=98000);7100+((A6-40000)*0,27);
IF(AND(98000<A6;A6<=148000);22760+((A6-98000)*0,35);
IF(148000<A6;36260)))))
-SUM(B$1:B5)
 

muygun

Özel Üye
Katılım
6 Temmuz 2004
Mesajlar
9,180
Excel Vers. ve Dili
Excel-2003 Türkçe
Merhaba;
birde bu şekilde deneyin.
=EĞER(A2<=22000;A2*0,15;EĞER(VE(A2>22000;A2<=49000);3300+((A2-22000)*0,2);EĞER(VE(A2>49000;A2<=120000);8700+((A2-49000)*0,27);EĞER(VE(A2>120000;A2<=600000);27870+((A2-120000)*0,35);EĞER(A2>600000;195870+((A2-600000)*0,4);"")))))
İyi çalışmalar.
 

Ekli dosyalar

Katılım
1 Mart 2011
Mesajlar
53
Excel Vers. ve Dili
Excel 2007
İdris bey emeğinize sağlık çok teşekkürler,
2020 yılında değişen dilimler için de bir çalışmanız olur mu ?
 

halit3

Uzman
Uzman
Katılım
18 Ocak 2008
Mesajlar
12,798
Excel Vers. ve Dili
2003 excell türkçe
ve
2007 excell türkçe
KTF Kullanıcı tanımlı fonksiyonla yazılmış kod

ücretliler için

kullanılışı =GELIRBUL1(A1)
Kod:
Function GELIRBUL1(Sayi)
sat = 6
ReDim a(sat)
ReDim b(sat)
ReDim c(sat)
ReDim vergi1(sat)
deg1 = 0
i = 1

'vergi dilimleri
a(1) = 22000          '1. dilim
a(2) = 49000          '2. dilim
a(3) = 180000         '3. dilim
a(4) = 600000         '4. dilim
a(5) = 600000         '5. dilim
a(6) = a(5) * (Sayi)
'______________________________
'yüzde oranları
b(1) = 0.15          '1. dilim
b(2) = 0.2           '2. dilim
b(3) = 0.27          '3. dilim
b(4) = 0.35          '4. dilim
b(5) = 0.4           '5. dilim
b(6) = 0.4           'diğerleri
'______________________________
c(1) = a(1)
c(2) = a(2) - a(1)
c(3) = a(3) - a(2)
c(4) = a(4) - a(3)
c(5) = a(5) - a(4)
c(6) = a(6) '- a(5)
'______________________________


While Sayi > 0
If Sayi >= c(i) Then
vergi1(i) = ((c(i) * b(i)) / 1)
Sayi = Sayi - c(i)
'ElseIf sayi < c(i) Then
Else
c(i) = Sayi
Sayi = Sayi - c(i)
vergi1(i) = ((c(i) * b(i)) / 1)
'Else
'vergi1(6) = ((c(6) * b(6)) / 1)
End If

deg1 = deg1 + vergi1(i)
i = i + 1
Wend


GELIRBUL1 = Round(deg1, 2)

End Function
Diğerleri için
kullanılışı =GELIRBUL2(A1)

Kod:
Function GELIRBUL2(Sayi)
sat = 6
ReDim a(sat)
ReDim b(sat)
ReDim c(sat)
ReDim vergi1(sat)
deg1 = 0
i = 1

'vergi dilimleri
a(1) = 22000          '1. dilim
a(2) = 49000          '2. dilim
a(3) = 120000         '3. dilim
a(4) = 600000         '4. dilim
a(5) = 600000         '5. dilim
a(6) = a(5) * (Sayi)
'______________________________
'yüzde oranları
b(1) = 0.15          '1. dilim
b(2) = 0.2           '2. dilim
b(3) = 0.27          '3. dilim
b(4) = 0.35          '4. dilim
b(5) = 0.35          '5. dilim
b(6) = 0.35          'diğerleri
'______________________________
c(1) = a(1)
c(2) = a(2) - a(1)
c(3) = a(3) - a(2)
c(4) = a(4) - a(3)
c(5) = a(5) - a(4)
c(6) = a(6) '- a(5)
'______________________________


While Sayi > 0
If Sayi >= c(i) Then
vergi1(i) = ((c(i) * b(i)) / 1)
Sayi = Sayi - c(i)
'ElseIf sayi < c(i) Then
Else
c(i) = Sayi
Sayi = Sayi - c(i)
vergi1(i) = ((c(i) * b(i)) / 1)
'Else
'vergi1(6) = ((c(6) * b(6)) / 1)
End If

deg1 = deg1 + vergi1(i)
i = i + 1
Wend


GELIRBUL2 = Round(deg1, 2)

End Function
 

Ekli dosyalar

Katılım
1 Mart 2011
Mesajlar
53
Excel Vers. ve Dili
Excel 2007
Çok teşekkürler, formülünüz çok basit ve hızlı emeğinize sağlık tekrar.
 

Gata

Altın Üye
Katılım
11 Ağustos 2018
Mesajlar
271
Excel Vers. ve Dili
Excelde 2016 Türkçe
Altın Üyelik Bitiş Tarihi
21-09-2027
Üst