Çıkarma işlemi

Ahmet Sami

Altın Üye
Katılım
10 Kasım 2006
Mesajlar
399
Excel Vers. ve Dili
microsoft office 2007-2010-2013-2019-2021
Altın Üyelik Bitiş Tarihi
06-01-2025
İyi günler aşağıdaki toplama işlemi kodu çıkarma işlemi olarak yapabilir miyiz bu konuda yardımcı olabilir misiniz.

Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
If Target.Column = 7 Or Target.Column = 8 Then
If Target.Column = 7 Then sut = 1
If Target.Column = 8 Then sut = -1
sat = Target.Row
Cells(sat, "I") = Target + Target.Offset(, sut)
End If
End Sub
 

ASLAN7410

Altın Üye
Altın Üye
Katılım
15 Temmuz 2012
Mesajlar
2,798
Excel Vers. ve Dili
Ofis 2021 TR 64 Bit
Altın Üyelik Bitiş Tarihi
29.03.2025
Merhaba.

Target + Target bu kısmın arasındaki + işaretini - işareti yapın tamamdır.
 

Ahmet Sami

Altın Üye
Katılım
10 Kasım 2006
Mesajlar
399
Excel Vers. ve Dili
microsoft office 2007-2010-2013-2019-2021
Altın Üyelik Bitiş Tarihi
06-01-2025
Çok teşekkür ederim sağolun. Ancak kalan miktarı eksi olarak gösteriyor.
Örnek olarak 500 TL borc var 100 TL ödemiş kalan 400 olması gerekiyor. Burada -400 yazıyor.
 

Ahmet Sami

Altın Üye
Katılım
10 Kasım 2006
Mesajlar
399
Excel Vers. ve Dili
microsoft office 2007-2010-2013-2019-2021
Altın Üyelik Bitiş Tarihi
06-01-2025
Sayın aslan ayrıca hücreye girmeden direkt olarak çıkarabiliyor mu. Çünkü var olan gelir ve giderlerden herhangi birini girmeden çıkarma yapmıyor. Yani hücreye veri girilse de girilmese de çıkarma işlemini otomatik olarak yapması gerekiyor.
 

relaxim

Altın Üye
Katılım
30 Ağustos 2009
Mesajlar
526
Excel Vers. ve Dili
Ofis 2016 Tr 64 bit
Altın Üyelik Bitiş Tarihi
15.06.2027
Sayın aslan ayrıca hücreye girmeden direkt olarak çıkarabiliyor mu. Çünkü var olan gelir ve giderlerden herhangi birini girmeden çıkarma yapmıyor. Yani hücreye veri girilse de girilmese de çıkarma işlemini otomatik olarak yapması gerekiyor.
Merhaba,
Change değilde Active olması lazım. Aşağıdaki gibi deneyebilir misiniz?

Private Sub Worksheet_Active(ByVal Target As Range)
 

ASLAN7410

Altın Üye
Altın Üye
Katılım
15 Temmuz 2012
Mesajlar
2,798
Excel Vers. ve Dili
Ofis 2021 TR 64 Bit
Altın Üyelik Bitiş Tarihi
29.03.2025
Kodu birşeyin tetiklemesi gerekiyor, o zaman formülle yapın işleminizi.

-400 sonucunu düzeltmek için,
Cells(sat, "I") = Target + Target.Offset(, sut) bu kısmı Cells(sat, "I") = Target.Offset(, sut) - Target bu şekilde değiştirin.
 

Ahmet Sami

Altın Üye
Katılım
10 Kasım 2006
Mesajlar
399
Excel Vers. ve Dili
microsoft office 2007-2010-2013-2019-2021
Altın Üyelik Bitiş Tarihi
06-01-2025
Teşekkür ederim ASLAN bey sağolun emeğinize sağlık
 

Ahmet Sami

Altın Üye
Katılım
10 Kasım 2006
Mesajlar
399
Excel Vers. ve Dili
microsoft office 2007-2010-2013-2019-2021
Altın Üyelik Bitiş Tarihi
06-01-2025
Formül yaptım ancak başka sayfaya makro ile aktarma yaptığım için formulü "I" sütunundan aşağıya doğru çoğalttığım zaman yazdır makrosu ile sayfada bir kaç satır olsa bile formulü aşağıya doğru çoğalttığım için diğer sayfalar da çıkıyor.
 

ASLAN7410

Altın Üye
Altın Üye
Katılım
15 Temmuz 2012
Mesajlar
2,798
Excel Vers. ve Dili
Ofis 2021 TR 64 Bit
Altın Üyelik Bitiş Tarihi
29.03.2025
Ahmet Bey, gerçek veriler yazmadan basit bir örnek dosya ekleyin, yardımcı olacak arkadaş olacaktır.
Bu şekilde afaki cevaplar oluşuyor.
 

Ahmet Sami

Altın Üye
Katılım
10 Kasım 2006
Mesajlar
399
Excel Vers. ve Dili
microsoft office 2007-2010-2013-2019-2021
Altın Üyelik Bitiş Tarihi
06-01-2025
Aslan bey vaktiniz olursa sizde bir göz atarsanız sevinirim. İnşallah diğer üstatlarımdan da yardım bekliyorum.
 

Ekli dosyalar

Seyit Tiken

Uzman
Uzman
Katılım
23 Ağustos 2005
Mesajlar
4,651
Excel Vers. ve Dili
Excel : 2010
Ahmet bey formül ve Filtre kullanmanızı tavsiye ederim, boş hücreleri gizleyebilirsiniz.
 

ASLAN7410

Altın Üye
Altın Üye
Katılım
15 Temmuz 2012
Mesajlar
2,798
Excel Vers. ve Dili
Ofis 2021 TR 64 Bit
Altın Üyelik Bitiş Tarihi
29.03.2025
Merhaba.

Kod:
Private Sub CommandButton1_Click()
    Dim SonSatir As Long
    SonSatir = Cells(Rows.Count, "A").End(3).Row
    Worksheets("BASKAN").Range("A3:H" & Rows.Count).Clear
    Range("A8:H" & SonSatir).Copy Worksheets("BASKAN").Range("A3")
    
    Sheets("BASKAN").Range("I10000").ClearContents
    With Sheets("BASKAN").Range("I3:I" & Sheets("BASKAN").[B10000].End(3).Row)
    .FormulaLocal = "=G3-H3"
    .Value = .Value
    End With
End Sub
 

Ahmet Sami

Altın Üye
Katılım
10 Kasım 2006
Mesajlar
399
Excel Vers. ve Dili
microsoft office 2007-2010-2013-2019-2021
Altın Üyelik Bitiş Tarihi
06-01-2025
Aslan bey çok teşekkür ederim. Sağolun varolun.
Seyit bey ilginizden dolayı size de teşekkür ederim.
 
Katılım
31 Mart 2024
Mesajlar
35
Excel Vers. ve Dili
365
Private Sub Worksheet_Change(ByVal Target As Range)
If Selection.Count > 1 Then Exit Sub
If Target.Column = 10 And Target.Row > 12 Then
son = Range("J" & Rows.Count).End(xlUp).Row
If son = 12 Then
Range("D9") = 0
Exit Sub
End If
Range("D9") = WorksheetFunction.Sum(Range("J13:J" & son))
End If

If Target.Column = 4 And Target.Row = 7 Then
Range("D8") = Range("D6") - Range("D7")
Range("D10") = Range("D8") - Range("D9")
End If
End Sub
D8 -d9 sonucu d10 vermesi gerekiyor ama vermiyor exit sub komutunu satir altına girdim sonucu doğru veriyor bu kezde toplama işlemi olan makro sonuç vermiyor düzeltme şansını varmi acaba
 
Katılım
31 Mart 2024
Mesajlar
35
Excel Vers. ve Dili
365
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [d4:d]) Is Nothing Then Exit Sub
If Cells(Target.Row, 2) <> Empty And
adet = WorksheetFunction.Max(Range("c1:c" & Target.Row))
Cells(Target.Row, 1) = adet + 1
End If
End Sub
Bunda da d4 veri girince c1 sayi değeri artması lazım ama yapamadım ki budeger 4 adet YÜKLÜ CIKAN 1 YÜKLÜ CIKAN 2 YUKLU CIKAN 3 YUKLU CIKAN 4 DIYE SAYFALARIM VAR HANGISININ D4 UNE YAZARSAM YAZAYIM HEPSINDE DEGER ORTAK ARTMALI BU NASIL ÇÖZECEĞİZ
 

ÖmerFaruk

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2017
Mesajlar
4,779
Excel Vers. ve Dili
Microsoft 365 Tr-64
Yukarıda yazdığınız kod mevcut haliyle doğru mu çalışıyor ki?
 
Katılım
31 Mart 2024
Mesajlar
35
Excel Vers. ve Dili
365
Yukarıda yazdığınız kod mevcut haliyle doğru mu çalışıyor ki?
Dün 02:36 da

Private Sub Worksheet_Change(ByVal Target As Range)
If Selection.Count > 1 Then Exit Sub
If Target.Column = 10 And Target.Row > 12 Then
son = Range("J" & Rows.Count).End(xlUp).Row
If son = 12 Then
Range("D9") = 0
Exit Sub
End If
Range("D9") = WorksheetFunction.Sum(Range("J13:J" & son))
End If

If Target.Column = 4 And Target.Row = 7 Then
Range("D8") = Range("D6") - Range("D7")
Range("D10") = Range("D8") - Range("D9")
End If
End Sub
D8 -d9 sonucu d10 vermesi gerekiyor ama vermiyor exit sub komutunu satir altına girdim sonucu doğru veriyor bu kezde toplama işlemi olan makro sonuç vermiyor
 
Katılım
31 Mart 2024
Mesajlar
35
Excel Vers. ve Dili
365
Dün 02:36 da

Private Sub Worksheet_Change(ByVal Target As Range)
If Selection.Count > 1 Then Exit Sub
If Target.Column = 10 And Target.Row > 12 Then
son = Range("J" & Rows.Count).End(xlUp).Row
If son = 12 Then
Range("D9") = 0
Exit Sub
End If
Range("D9") = WorksheetFunction.Sum(Range("J13:J" & son))
End If

If Target.Column = 4 And Target.Row = 7 Then
Range("D8") = Range("D6") - Range("D7")
Range("D10") = Range("D8") - Range("D9")
End If
End Sub
D8 -d9 sonucu d10 vermesi gerekiyor ama vermiyor exit sub komutunu satir altına girdim sonucu doğru veriyor bu kezde toplama işlemi olan makro sonuç vermiyor
Çalışıyor ama d10 sonuç yanlış veya ya yazmıyor d8 ile d 9 topluyor ama d8- d9 olmalı idi olmuyor
 
Katılım
31 Mart 2024
Mesajlar
35
Excel Vers. ve Dili
365
Çalışıyor ama d10 sonuç yanlış veya ya yazmıyor d8 ile d 9 topluyor ama d8- d9 olmalı idi olmuyor
Değerli arkadaşlarım sizden bor ricada bulana bitirmişim youtube yi baştan sona aradım ama yok neden aynı sayfada toplama cikarma islemi yapıp sonucu alt satıra hucreye veya başka hucreye yazmakla ilgili video hiç yok tüm videolar başka sayfaya veya karmaşık degerlerlerle ilgili klasik bir sayfada topla çıkar sonucu yaz makro videosu yok varmadan bulamıyorum link varsa paylaşırsanız sevinirim
 

ÖmerFaruk

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2017
Mesajlar
4,779
Excel Vers. ve Dili
Microsoft 365 Tr-64
Sayın @ottoman005
Yazdığınız yazılardan anlam çıkarma sorunuzu çözemeye gayret ediyorum. Ama beceremiyorum.
Ne yazdığınız kelimelere ne imla kurallarına riayet ediyorsunuz.
Ben çaba sarfediyorum ki sorununuza çözüm bulalım.
Mesela son mesajınıza bakın.
3 satır yazı yazmışsınız.
Bir tane BÜYÜK HARF var. Değerli....
Devamında ne virgül var ne nokta.
sizden bor ricada bulana bitirmişim ...sanırım Sizden bir ricada bulunabilir miyim? demek istiyorsunuz. Neredeyse karakterlerin yarısı yanlış. Diğerlerini yazmıyorum bile.

Lütfen. Excelde çözüm bulabilmemiz için sizi ve sizin sorunuzu anlayabilmemiz lazım.
Bunu da Türkçe yapmalıyız.
Ki sizin sorununuz hızla çözülsün.

Yukarıdaki mesajlarınızı ve kodlarınızı unutun.
Sorununuza sayfa ve hücre adresleriyle bir kez daha tarif edin.
Eğer anlatmakta zorluk çekiyorsanız örnek bir excel doyası hazırlayın. İçinde kod formül vs olmasına gerek yok.
Sorunuzu örnek dosyayla pekiştirerek sorun.
Dosyanızı Upload.com / dosya.co vb paylaşım sitelerine yükleyip buraya linkini kopyalayın.
Daha hızlı çözüm alacaksınız tabi eğer dediklerimi yapmaya gayret sarfederseniz.
Teşekkürler
 
Üst