- Katılım
- 23 Eylül 2004
- Mesajlar
- 1,754
- Excel Vers. ve Dili
- Excel 2010 TR
Kod:
Function NetBrut(AY, Net, GUN, KGVM, OAGV)
'-------Tanımlamalar-------------
Gel_Ver_Tut1 = 8800
Gel_Ver_Tut2 = 22000
Gel_Ver_Tut3 = 76200
Gel_Ver_Tut4 = 500000000
Damga_Ver = 0.0066
SGK_İsci_Pay = 0.14
Sig_Mat1_Tab = 728
Sig_Mat2_Tab = 760.5
Sig_Mat1_Tav = 4738.5
Sig_Mat2_Tav = 4943.4
Brut1 = 0
'--------- Tanımlamaların Sonu-----------
bas:
'----------------------
If AY <= 6 Then
Sig_Tb = Sig_Mat1_Tab
Sig_Tv = Sig_Mat1_Tav
Else
Sig_Tb = Sig_Mat2_Tab
Sig_Tv = Sig_Mat2_Tav
End If
'-----------------------
If Brut1 < ((Sig_Tb / 30) * GUN) Then
SSK_Mat1 = ((Sig_Tb / 30) * GUN)
ElseIf Brut1 > ((Sig_Tv / 30) * GUN) Then
SSK_Mat1 = ((Sig_Tv / 30) * GUN)
Else
SSK_Mat1 = Brut1
End If
SSK_ic1 = SSK_Mat1 * SGK_İsci_Pay
İs_Sig1 = SSK_Mat1 / 100
İlk_Kes1 = SSK_ic1 + İs_Sig1
Gv_Mat1 = Brut1 - İlk_Kes1
K_Gv_Mat1 = Gv_Mat1 + KGVM
If K_Gv_Mat1 < (Gel_Ver_Tut1 + 0.01) Then
G_V1 = (K_Gv_Mat1 * 0.15)
ElseIf K_Gv_Mat1 < (Gel_Ver_Tut2 + 0.01) Then
G_V1 = ((Gel_Ver_Tut1 * 0.15) + ((K_Gv_Mat1 - Gel_Ver_Tut1) * 0.2))
ElseIf K_Gv_Mat1 < (Gel_Ver_Tut3 + 0.01) Then
G_V1 = ((Gel_Ver_Tut1 * 0.15) + ((Gel_Ver_Tut2 - Gel_Ver_Tut1) * 0.2) + ((K_Gv_Mat1 - Gel_Ver_Tut2) * 0.27))
ElseIf K_Gv_Mat1 < Gel_Ver_Tut4 Then
G_V1 = ((Gel_Ver_Tut1 * 0.15) + ((Gel_Ver_Tut2 - Gel_Ver_Tut1) * 0.2) + ((Gel_Ver_Tut3 - Gel_Ver_Tut2) * 0.27) + ((K_Gv_Mat1 - Gel_Ver_Tut3) * 0.35))
End If
D_V1 = Brut1 * Damga_Ver
Kes_Top1 = ((İlk_Kes1 + G_V1) - OAGV) + D_V1
NET1 = Brut1 - Kes_Top1
If Net > NET1 Then
Brut1 = Brut1 + 50
GoTo bas:
ElseIf NET1 > (Net + 0.05) Then
Brut1 = Brut1 - 0.01
GoTo bas:
ElseIf NET1 > (Net + 0.001) Then
Brut1 = Brut1 - 0.001
GoTo bas:
End If
NetBrut = Brut1
End Function
Ekteki Funtion excelde hesaplarken hesaplama süresi en fazla 5 saniye oluyor.
Fakat ben bunu userform uzerinde hesaplama yaptığım zaman süre uzuyor ve yanıt vermiyor hatası veriyor. yapmak istediğim user formda..
Textbox6.value= NetBrut(textboxt1.value,textboxt2.value,textboxt3.value, textboxt4.value, textboxt5.value)
şeklinde excel hücresi yerine txtboxlardan verileri alması bunu yapınca neden yavaşlar.
Bunu hızlandırmak için ne yapmam gerekir?
Şimdiden teşekkürler.
