İskontolu fiyat hesaplama.

esnaf88

Altın Üye
Katılım
12 Mayıs 2005
Mesajlar
40
Altın Üyelik Bitiş Tarihi
31-01-2026
Merhaba.
1-KDV Dahil (%10) 40,70 TL'ye sattığım ürünün satış fiyatını;
- Satış fiyatındaki KDV tutarını düştükten sonra % 5 iskonto uygulayıp, çıkan toplama %10 KDV ekleyerek hesaplatmak istiyorum.
2- Aynı işlemi KDV Hariç olarak sattığım üründe de uygulamak istiyorum.
Userform1 üzerindeki TextBox1'de Birim Fiyat, TextBox2'de Miktar, OptionButon1'de KDV Dahil, OptionButon2'de KDV Hariç seçimleri, ComboBox1'de KDV Oranı, TextBox3'de İskonto Oranı, TextBox4'de Toplam Satış Tutarı var.
Bu işlemi makro kullanarak fonksiyon ile ve fonksiyonsuz olarak 2 şekilde çözmeme yardımcı olacak arkadaşlara şimdiden teşekkür ederim.
 

muhasebeciyiz

Altın Üye
Katılım
10 Şubat 2006
Mesajlar
1,205
Excel Vers. ve Dili
Office 2016
64 Bit
Altın Üyelik Bitiş Tarihi
21-12-2027
Kod:
Option Explicit

Private Sub HesaplaDirekt()
    Dim BirimFiyat As Double, Miktar As Double
    Dim KDVOrani As Double, IskontoOrani As Double
    Dim iskontoKatsayi As Double, kdvKatsayi As Double
    Dim netBirim As Double, araToplam As Double, toplam As Double
    Dim KDVDahilMi As Boolean
    
    BirimFiyat = Val(Replace(TextBox1.Value, ",", "."))
    Miktar = Val(Replace(TextBox2.Value, ",", "."))
    KDVOrani = Val(Replace(ComboBox1.Value, ",", "."))
    IskontoOrani = Val(Replace(TextBox3.Value, ",", "."))
    KDVDahilMi = OptionButton1.Value
    
    iskontoKatsayi = 1 - (IskontoOrani / 100)
    kdvKatsayi = 1 + (KDVOrani / 100)
    
    If iskontoKatsayi < 0 Then iskontoKatsayi = 0
    If Miktar < 0 Then Miktar = 0
    
    If KDVDahilMi Then
        netBirim = BirimFiyat / kdvKatsayi
    Else
        netBirim = BirimFiyat
    End If
    
    araToplam = netBirim * iskontoKatsayi
    toplam = araToplam * kdvKatsayi
    toplam = toplam * Miktar
    
    TextBox4.Value = Format(WorksheetFunction.Round(toplam, 2), "0.00")
End Sub

Private Sub CommandButton1_Click()
    HesaplaDirekt
End Sub

Private Sub TextBox1_Change(): HesaplaDirekt: End Sub
Private Sub TextBox2_Change(): HesaplaDirekt: End Sub
Private Sub TextBox3_Change(): HesaplaDirekt: End Sub
Private Sub ComboBox1_Change(): HesaplaDirekt: End Sub
Private Sub OptionButton1_Click(): HesaplaDirekt: End Sub
Private Sub OptionButton2_Click(): HesaplaDirekt: End Sub
Module eklemeden, tüm hesaplamayı UserForm içinde yapabilirsiniz:
 
Üst