Macro ile toplama

Katılım
5 Mart 2005
Mesajlar
44
Excel Vers. ve Dili
excel 2003
TR
merhaba arkadaşlar;

bir çalışma sayfasında e3 hücresine a1+a2 bu formülle toplama işlemi gerçekleşiyor macro ile yaptığımız zaman bu makroyu ilaki butonamı atamak lazım mesala ben a1'i değiştirdiğim zaman e3 otomatik olarak değişiyor ama makroda öyle değil ilaki makroyu çaştırmak gerekiyor butonsuz olmazmı bu iş aynı formüllerdeki gibi
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Makro elbette butonsuzda çalışır. Bunun için makroyu sayfanın kod sayfasına hücre değişimine göre çalışacak şekilde tasarlayabilirsiniz. Bunun için aşağıdaki kodu sayfanın kod sayfasına kopyalayın.

[vb:1:740b6cc167]Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [a1:a2]) Is Nothing Then Exit Sub
[e3] = [a1] + [a2]
End Sub
[/vb:1:740b6cc167]
 
Katılım
29 Haziran 2005
Mesajlar
217
arkadaşım Leventm arkadaşımız gayet açık yazmış ama sen deneme yanılma usulüyle biraz uğraşsan kendinde bulabilirdin.
Alt+F11 penceresi ile VB düzenleyicisini aç.sonra kopyalamış olduğun kodları çalışma kitabındaki sayfaya yapıştır.
A1 ve A2 ye sayılar yazarsan E3 e toplanmış olarak yazıldığını göreceksin.
saygılar
 
Katılım
29 Haziran 2005
Mesajlar
217
Sayın Levenm bende bir soru sormak istiyorum.bunun devamında başka şeylerde toplatmak istediğim zaman nasıl yapmam gerekiyor.
sizin kodda hemen toplama yapıyor.
fakat

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [a1:a2], [e1:e2]) Is Nothing Then Exit Sub
[e3] = [a1] + [a2]
[a3] = [e1] + [e2]
End Sub
End Sub
bu kodda sayıları değiştirdiğimiz zaman yapmıyor.
tanımlayamadığım bişi mi var acaba.
iyi günler
 
Katılım
2 Temmuz 2005
Mesajlar
80
Sayın extacy kodları aşağıdaki sekilde yapın toplayacaktır,

Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [a1:a2, e1:e2]) Is Nothing Then Exit Sub
[a3] = [a1] + [a2]
[e3] = [e1] + [e2]
End Sub
 
Katılım
29 Haziran 2005
Mesajlar
217
Teşekkür ederim rakipsiztayfun,
İyi Günler
 
Üst