Textbox Toplama ve Çıkarma

  • Konbuyu başlatan ahmedummu
  • Başlangıç tarihi
A

ahmedummu

Misafir
İyi akşamlar arkadaşlar. Hayırlı Ramazanlar.

Bi konuda yardımınızı rica edeceğim.

Burada uzun uzun yazmak istemedim. Ekte gönderdiğim örnek dosyada anlattım. Yardımcı olabilir misiniz.
 

Ekli dosyalar

A

ahmedummu

Misafir
Merhaba arkadaşlar. Hayırlı Ramazanlar.

Dün akşam açtığım konu ile ilgili çözüldü demiştim ama maalesef çözülmemiş. Yine sonuç yanlış çıkıyor.

Örnek resimde anlattım. Yardımcı olursanız sevinirim.
 

Ekli dosyalar

Ömer

Moderatör
Yönetici
Katılım
18 Ağustos 2007
Mesajlar
22,184
Excel Vers. ve Dili
Microsoft 365 Tr
Ofis 2016 Tr
Merhaba,

Deneyiniz.
Kod:
Private Sub CommandButton1_Click()
If TextBox1.Value = "" Or TextBox2.Value = "" Then Exit Sub
Sheets("sayfa1").Range("a3").Select
aylik_Gelir_Vergisi_Matrahi1 = WorksheetFunction.Round((ActiveCell.Offset(-2, 2).Value + ActiveCell.Offset(-1, 2).Value + ActiveCell.Offset(0, 2).Value + ActiveCell.Offset(1, 2).Value + ActiveCell.Offset(2, 2).Value) - ActiveCell.Offset(-2, 7).Value, 2)
If CDbl(TextBox2.Value) > ActiveCell.Offset(-2, 7).Value Then
özel_sigorta = ActiveCell.Offset(-2, 7).Value
Else
özel_sigorta = CDbl(TextBox2.Value)
End If
muaf = Val(TextBox1.Value + Val(özel_sigorta))
ActiveCell.Offset(-2, 9).Value = WorksheetFunction.Round(aylik_Gelir_Vergisi_Matrahi1 - muaf, 2)
ActiveCell.Offset(-2, 9).NumberFormat = "#,##0.00"
ActiveCell.Offset(-2, 6).Value = ActiveCell.Offset(-2, 9).Value * 0.15
ActiveCell.Offset(-2, 6).NumberFormat = "#,##0.00"
ActiveCell.Offset(2, 1).Value = özel_sigorta
ActiveCell.Offset(2, 1).NumberFormat = "#,##0.00"
End Sub
 
A

ahmedummu

Misafir
Merhaba,

Deneyiniz.
Kod:
Private Sub CommandButton1_Click()
If TextBox1.Value = "" Or TextBox2.Value = "" Then Exit Sub
Sheets("sayfa1").Range("a3").Select
aylik_Gelir_Vergisi_Matrahi1 = WorksheetFunction.Round((ActiveCell.Offset(-2, 2).Value + ActiveCell.Offset(-1, 2).Value + ActiveCell.Offset(0, 2).Value + ActiveCell.Offset(1, 2).Value + ActiveCell.Offset(2, 2).Value) - ActiveCell.Offset(-2, 7).Value, 2)
If CDbl(TextBox2.Value) > ActiveCell.Offset(-2, 7).Value Then
özel_sigorta = ActiveCell.Offset(-2, 7).Value
Else
özel_sigorta = CDbl(TextBox2.Value)
End If
muaf = Val(TextBox1.Value + Val(özel_sigorta))
ActiveCell.Offset(-2, 9).Value = WorksheetFunction.Round(aylik_Gelir_Vergisi_Matrahi1 - muaf, 2)
ActiveCell.Offset(-2, 9).NumberFormat = "#,##0.00"
ActiveCell.Offset(-2, 6).Value = ActiveCell.Offset(-2, 9).Value * 0.15
ActiveCell.Offset(-2, 6).NumberFormat = "#,##0.00"
ActiveCell.Offset(2, 1).Value = özel_sigorta
ActiveCell.Offset(2, 1).NumberFormat = "#,##0.00"
End Sub
Çok teşekkür ederim Ömer bey düzeldi.

Bir konuda daha yardım rica edeceğim. Aşağıdaki kod ile istediğim oluyor ama dosyamı yavaşlattı. Daha hızlı çalışan bir yolu var mıdır. Bu örnek dosyada biraz hızlı olabilir ama benim dosyamda biraz daha yavaş çalışıyor.

For i1 = -2 To 2
For i = 0 To 9
ActiveCell.Offset(i1, i).Font.Size = 8
ActiveCell.Offset(i1, i).RowHeight = 12
Next i
Next i1
 

Ekli dosyalar

Ömer

Moderatör
Yönetici
Katılım
18 Ağustos 2007
Mesajlar
22,184
Excel Vers. ve Dili
Microsoft 365 Tr
Ofis 2016 Tr
Deneyiniz.
Kod:
Private Sub CommandButton1_Click()
Sheets("sayfa1").Range("a3").Select
ActiveCell.Offset(-2, 0).Resize(5, 9).Font.Size = 8
ActiveCell.Offset(-2, 0).Resize(5, 9).RowHeight = 12
End Sub
 
A

ahmedummu

Misafir
Deneyiniz.
Kod:
Private Sub CommandButton1_Click()
Sheets("sayfa1").Range("a3").Select
ActiveCell.Offset(-2, 0).Resize(5, 9).Font.Size = 8
ActiveCell.Offset(-2, 0).Resize(5, 9).RowHeight = 12
End Sub
Çok teşekkürler Ömer bey bayağı hızlandı.
 
A

ahmedummu

Misafir
Arkadaşlar bugün çok soru sordum kusura bakmayın. Bir sorum daha olacak

Aşağıdaki kodlarda yanlışlık nerede, aynı kodlar ayrı bir örnek dosyada çalışıyor. Benim dosyamda çalışmıyor.

yıllık_gelir_vergisi_matrahı = CDbl(TextBox8.Value)
aylık_gelir_vergisi_matrahı = CDbl(ActiveCell.Offset(-2, 9).Value)
ActiveCell.Offset(-1, 9).Value = Val(yıllık_gelir_vergisi_matrahı + Val(aylık_gelir_vergisi_matrahı))
ActiveCell.Offset(-1, 9).NumberFormat = "#,##0.00"

Textbox8'deki değer ile aktif hücrenin 2 üst, 9 sağındaki hücredeki değeri toplayıp, aktif hücrenin 1 üst, 9 sağındaki hücreye yazması gerekiyor. Yazıyor ama sadece aktif hücrenin 1 üst, 9 sağındaki hücrenin değerini yazıyor. Textbox8 deki değer ile toplamıyor. Yardımcı olursanız sevinirim.
 
Üst