Bir hücreye yazdığım değer kadar belirli hücreden başlayıp toplama yapma

Katılım
30 Temmuz 2007
Mesajlar
5
Excel Vers. ve Dili
2010
türkçe
Merhaba Arkadaşlar,

Başlığım uzun oldu biraz ama burada açıklayayım. A sütununda aşağıya doğru yazdığım değerler var. B1 hücresine yazdığım değer kadar (örneğin 3) A sütunundaki hücrelerin toplanmasını istiyorum. Yani 3 yazdığımda A1, A2 ve A3'ün toplanmasını istiyorum. Ayrıca B1 hücresine yazdığım değer ondalık da (2,42) olabilir. Bu durumda A1, A2 ve A3*0,42 nin toplanmasını istiyorum. Çok tecrübem yok excel konusunda. İnternette de araştırdım ama bir cevap bulamadım. Belki de çok şey istiyorum. Ama bi çözüm varsa bu sitede vardır diyerek yazmak istedim. Yardımlarınız için şimdiden teşekkürler.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,276
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Boş bir hücreye aşağıdaki formülü uygulayıp deneyiniz.

Kod:
=TOPLA(KAYDIR(A1;;;TABANAYUVARLA(B1;1)))+EĞER(MOD(B1;1)>0;KAYDIR(A1;TAVANAYUVARLA(B1;1)-1;;;))*MOD(B1;1)
 
Katılım
30 Temmuz 2007
Mesajlar
5
Excel Vers. ve Dili
2010
türkçe
Arama yaptım ama bulamadım. Yardımınız için teşekkür ederim. Yazdığınız formül işimi görüyor.
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,073
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Aşağıdaki kodları ilgili sayfanın kod bölümüne yapıştırdığınızda B1 hücresi her değiştiğinde belirttiğiniz şekilde A sütunundaki hücrelerin toplamını C1 hücresine yazar:

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("b1")) Is Nothing Then Exit Sub
tam = WorksheetFunction.Quotient(Target, 1)
kalan = Target - tam

If kalan = 0 Then
    [C1] = WorksheetFunction.Sum(Range("A1:A" & tam))
Else
    [C1] = WorksheetFunction.Sum(Range("A1:A" & tam)) + Cells(tam, "A") * kalan
End If
End Sub
 
Üst