Seçili Alan ve Kaydırarak Toplama

Katılım
19 Temmuz 2016
Mesajlar
129
Excel Vers. ve Dili
2013
Altın Üyelik Bitiş Tarihi
23-08-2020
Arkadaşlar merhaba

Yapmak istediğim mouse ile işaretlediğim alanı toplamak ve msgboxta göstermek. Bide işaretlediğim alanın karşılığına gelen alanın toplamını almak ve msgboxta göstermek.

Ben kendimce işaretlediğim alanı toplamayı yaptım. Ama onun karşılığına gelen alanı toplayamadım.

Kod:
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)


    C = Selection.Columns.Count
    r = Selection.Rows.Count
    g = Selection
    MsgBox Application.WorksheetFunction.Sum(g)
    
 
End Sub
Teşekkürler
 

Ekli dosyalar

Katılım
31 Aralık 2014
Mesajlar
1,845
Excel Vers. ve Dili
Excel 2010
Merhaba
Aşağıdaki gibi denermisiniz?
Kod:
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)

    MsgBox Application.WorksheetFunction.Sum(Range(Selection.Address))
    
End Sub
 
Katılım
31 Aralık 2014
Mesajlar
1,845
Excel Vers. ve Dili
Excel 2010
Seçimin satırları içinse;
Kod:
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
    MsgBox Application.WorksheetFunction.Sum(Rows(Selection.EntireRow.Address))
End Sub
 
Katılım
31 Aralık 2014
Mesajlar
1,845
Excel Vers. ve Dili
Excel 2010
Sanırım tam anlamamışım isteğiniz şöylemi?
Kod:
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)

 a = Selection.Column
 b = ActiveSheet.UsedRange.Columns.Count
 c = Selection.Row
 d = Selection.Rows.Count
 MsgBox Application.WorksheetFunction.Sum(Range(Cells(c, a), Cells(c + d - 1, b)))
End Sub
 
Katılım
19 Temmuz 2016
Mesajlar
129
Excel Vers. ve Dili
2013
Altın Üyelik Bitiş Tarihi
23-08-2020
Cevabınız için teşekkürler. Ama ben tam açıklayamamış olabilirim. Açıkcası birazda karışık.

Sola ve sağda tarafta iki tane ayrı tablo var.
Örnek sol tablodan A1:C2 hücresini sectiğimde bunun toplamını msgbox olarak verecek.
A1:C2 hücresinin karşılığına gelen kısım ise 2 tabloda G1:H2 kısmına denk geliyor. Aynı şekilde buranında toplamını ayrı bir msgboxta gösterecek.

Teşekkürler.
 
Katılım
31 Aralık 2014
Mesajlar
1,845
Excel Vers. ve Dili
Excel 2010
Şöyle olabilir;
https://dosyaup.com/d/AOGMRTNP
Kod:
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
MsgBox Application.WorksheetFunction.Sum(Range(Selection.Address))


 c = Selection.Row
 d = Selection.Rows.Count
 MsgBox Application.WorksheetFunction.Sum(Range(Cells(c, 7), Cells(c + d - 1, 8)))
End Sub
 
Katılım
19 Temmuz 2016
Mesajlar
129
Excel Vers. ve Dili
2013
Altın Üyelik Bitiş Tarihi
23-08-2020
Hocam emeğin için sağol. Mantık olarak en son yaptığınız koddaki gibi olacak. Ama sol tabloda 3 kolon varsa sağ tabloda da 3 kolon olacak. Sizin yaptığınızda sağ tarafta 2 kolon var. Ben sağını ve soluna değerler yazdığımda ise toplamlarını vermiyor.
 
Katılım
31 Aralık 2014
Mesajlar
1,845
Excel Vers. ve Dili
Excel 2010
Merhaba
Eğer "G" sütunu sabit ise;

Kod:
MsgBox Application.WorksheetFunction.Sum(Range(Selection.Address))

 c = Selection.Row
 d = Selection.Rows.Count
 y = Selection.Columns.Count
 MsgBox Application.WorksheetFunction.Sum(Range(Cells(c, 7), Cells(c + d - 1, 6 + y)))
"G" sütunu sabit değil üst mesajınızdaki gibi seçimin en son sütunundan; devamlı üç ileri sütundan başlayarak toplayacaksa;
Kod:
MsgBox Application.WorksheetFunction.Sum(Range(Selection.Address))

 c = Selection.Row
 d = Selection.Rows.Count
 y = Selection.Columns.Count
 m = Selection.Column
 MsgBox Application.WorksheetFunction.Sum(Range(Cells(c, m + y + 3 - 1), Cells(c + d - 1, m + y + 3 + y)))
 
Katılım
19 Temmuz 2016
Mesajlar
129
Excel Vers. ve Dili
2013
Altın Üyelik Bitiş Tarihi
23-08-2020
Teşekkürler desteğiniz için. G sütununu sabit sayarsak kodların bir bölümü çalışıyor. Mavi ile işaretlediğim yerlerdeki kodlar düzgün, kırmızı ile işaretlediğim yerlerdeki toplamlar yanlış çıkıyor.
 

Ekli dosyalar

Katılım
19 Temmuz 2016
Mesajlar
129
Excel Vers. ve Dili
2013
Altın Üyelik Bitiş Tarihi
23-08-2020
Merhabalar konu için yardımlarınızı beklemekteyim.

Şöyle bir kod geldi aklıma

Eğer seçili alan 1 ise secili alanın toplamını göster ve 6 saga git ordaki değerin toplamını göster

Eğer seçili alan 2 ise secili alanın toplamını göster ve 6 sağa git ordaki değerin toplamını göster.

Eğer seçili alan 3 ise secili alanın toplamını göster ve 6 sağa git ordaki değerin toplamını göster


Bu şekilde bir kod yazabilir miyiz?
Teşekkürler.
 
Üst