İki Hücreyi Çarp Sonuçları alt alta toplatarak sürekli kaydır şeklinde bir excel sayfası lazım.

Katılım
25 Temmuz 2012
Mesajlar
12
Excel Vers. ve Dili
2007
Arkadaşlar bir maruzatım olacaktı. İki hücreye gireceğim farklı rakamları (ondalıklı) çarpıp bir hücrede sonucu gösterecek aynı zamanda her çarpım işleminin sonuçlarını uygun bir sütunda alt alta gelecek şekilde her işlem yaptığımda alta yeni işlem sonucunu atayacak ve sonuçların toplamları da yine alta doğru kayacak şekilde ilerleyecek bir kod lazım. teşekkür ederim. altın üye olmadığımdan direkt dosya alamıyorum.
 

kulomer46

Altın Üye
Katılım
23 Mart 2007
Mesajlar
1,513
Excel Vers. ve Dili
Microsoft Office LTSC Professional Plus 2021 - Türkçe
Altın Üyelik Bitiş Tarihi
08-06-2027
Merhaba

İlgili dosya ve kod ve excel dosyası resmi eklenmiştir...

Selamlar...

İlgili Kod
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
'10.09.2019   15:41

If Target.Row = 2 Then
    
    If Target.Column = 1 Or Target.Column = 2 Then
    
        son6 = Cells(Rows.Count, 6).End(3).Row
        
            Cells(son6 + 1, 6) = son6 - 1
            Cells(son6 + 1, 7) = Cells(2, 1)
            Cells(son6 + 1, 8) = Cells(2, 2)
            Cells(son6 + 1, 9) = Cells(2, 3)
            
            son9 = Cells(Rows.Count, 9).End(3).Row
            
            For i = 3 To son9
            
                toplam = toplam + Cells(i, 9)
            
            Next
        
            Cells(son6 + 1, 10) = toplam
            
            Cells(son6 + 1, 11) = Date
            
            Cells(son6 + 1, 12) = Time
    
    End If
    
End If

End Sub

Excel dosyası resmi

1568120355971.png
 

Ekli dosyalar

Katılım
25 Temmuz 2012
Mesajlar
12
Excel Vers. ve Dili
2007
Öncelikle çok teşekkür ederim. Ancak resmi de dosyayı da tıkladığımda yetkiniz yok altın üye değilsiniz diye göstermiyor.
 
Katılım
25 Temmuz 2012
Mesajlar
12
Excel Vers. ve Dili
2007
skralpr (at) yahoo nokta com adresine eposta atarsanız çok sevinirim.
 

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
Sayın @kulomer46 , kodlarınız hem A2 hem de B2 her değiştiğinde yeni işlem yapıyor. Aşağıdaki gibi daha ideal olmaz mı:

PHP:
Private Sub Worksheet_Change(ByVal Target As Range)
'10.09.2019   15:41
If Intersect(Target, [A2:B2]) Is Nothing Then Exit Sub
If Selection.Count > 1 Then Exit Sub
If Target = "" Then Exit Sub

If [A2] <> "" And [B2] <> "" Then
    son6 = Cells(Rows.Count, 6).End(3).Row

    Cells(son6 + 1, 6) = son6 - 1
    Cells(son6 + 1, 7) = Cells(2, 1)
    Cells(son6 + 1, 8) = Cells(2, 2)
    Cells(son6 + 1, 9) = Cells(2, 3)
    Cells(son6 + 1, 10) = WorksheetFunction.Sum(Range("I2:I" & son6 + 1))
    Application.EnableEvents = False
        [A2:B2] = ""
    Application.EnableEvents = True
    
    Cells(son6 + 1, 11) = Date
    Cells(son6 + 1, 12) = Time
    [A2].Select
End If

End Sub
 

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
Öncelikle çok teşekkür ederim. Ancak resmi de dosyayı da tıkladığımda yetkiniz yok altın üye değilsiniz diye göstermiyor.
Sayın kulomer'in hazırladığı ve benim biraz değiştirp yukarda Verdiğim kodları boş bir sayfanın kod bölümüne (sayfa adına sağ tıklayıp kod görüntüle deyince açılan sayfaya) yapıştırıp deneyin. A2 ve B2 hücrelerine sayı yazdığınızda belirttiğiniz işlemi F sütunundan itibaren işlem no, ilk çarpan, ikinci çarpan, sonuç, kümülatif toplam, tarih ve işlem saati olarak sıralayacaktır.
 

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
Bu arada kodlar şöyle daha iyi oldu sanki:

PHP:
Private Sub Worksheet_Change(ByVal Target As Range)
'10.09.2019   15:41
If Intersect(Target, [A2:B2]) Is Nothing Then Exit Sub
If Selection.Count > 1 Then Exit Sub
If Target = "" Then Exit Sub
If IsNumeric(Target) = False Then
    MsgBox "Lütfen sayı giriniz", vbCritical
    Application.EnableEvents = False
        Target = ""
        Target.Select
    Application.EnableEvents = True
    Exit Sub
End If
If [A2] <> "" And [B2] <> "" Then
    son6 = Cells(Rows.Count, 6).End(3).Row

    Cells(son6 + 1, 6) = son6 - 1
    Cells(son6 + 1, 7) = Cells(2, 1)
    Cells(son6 + 1, 8) = Cells(2, 2)
    Cells(son6 + 1, 9) = Cells(2, 3)
    Cells(son6 + 1, 10) = WorksheetFunction.Sum(Range("I2:I" & son6 + 1))
    Application.EnableEvents = False
        [A2:B2] = ""
    Application.EnableEvents = True
    
    Cells(son6 + 1, 11) = Date
    Cells(son6 + 1, 12) = Time
    [A2].Select
End If

End Sub
 

kulomer46

Altın Üye
Katılım
23 Mart 2007
Mesajlar
1,513
Excel Vers. ve Dili
Microsoft Office LTSC Professional Plus 2021 - Türkçe
Altın Üyelik Bitiş Tarihi
08-06-2027
Sayın @kulomer46 , kodlarınız hem A2 hem de B2 her değiştiğinde yeni işlem yapıyor. Aşağıdaki gibi daha ideal olmaz mı:
Çok daha iyi olmuş dosyanızın son hali.
Elinize sağlık.

Selamlar...
 
Katılım
25 Temmuz 2012
Mesajlar
12
Excel Vers. ve Dili
2007
Dediğinizi yaptım ama başaramadım. mesela A2 hücresine 500 yazdım B2 hücresine ise 1,15 çarpmadı bende. Yapmak istediğim şey esasında şu. A2 Hücresinde 50 100 200 300 1000 50000 gibi aslında para miktarı (birim diye belirtmeye gerek yok). yanındaki B2 de ise bu parayı çarpacağım oran olacak. Mesela 1,05 ya da 1,15 gibi. parayı yazmak için devamlı sadece A2 hücresini oranı yazmak içinde B2 hücresini kullanacağım. İkiside her defasında değişebilecek. Ancak her işlemin sonucunu başka bir sütunda verip verip altına toplayarak gidecek. Örneğin bugün 100 lira ile 1,05 oranı çarptım eşittir şu kadar kazandım ertesi günü 250 lira ile 1,05 oranını çarptım şu kadar para yaptı. altına da her günkü hasılatı toplayacak. Ancak A2 A3 A4 ve ya B2 B3 B4 diye her hücreye para oran girmeden. sadece A2 ve B2 yi kullanarak. Sütun boyunca değişen bu işlem sonuçları ve altındaki toplamı olacak. Çok teşekkür ederim
 

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
Verilen kod en alta toplama haricinde tam olarak istediğinizi yapmaktadır. Kümülatif toplamı her satırda ayrıca belirtmek dışında isteğiniz gerçekleşmektedir.
 

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
C2 hücresine =A2*B2 formülünü ekleyip deneyiniz.
 
Katılım
25 Temmuz 2012
Mesajlar
12
Excel Vers. ve Dili
2007
Çok teşekkür ederim. Tam istediğim gibi oldu. Eksik olmayın
 
Üst