• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Birinci tabloya sayı ekledikçe ikinci tabloya veri aktarımı

Katılım
28 Nisan 2010
Mesajlar
182
Excel Vers. ve Dili
2007 Türkçe
Merhaba Arkadaşlar. Mavi alanın karşısına sayı girdikçe sarı alana mavi alanın otomatikmen yazılmasını nasıl sağlarım. Tablo ektedir. Teşekkür Ederim.
 

Ekli dosyalar

Aşağıdaki kodları Veri sayfasının kod bölümüne (sayfa ismine sağ tıklayıp kod görüntüle deyince açılan sayfaya) yapıştırarak deneyiniz:

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [B2:D10]) Is Nothing Then Exit Sub
a = Target.Row
b = Target.Column
sabah = Cells(Rows.Count, "G").End(3).Row
öğle = Cells(Rows.Count, "H").End(3).Row
akşam = Cells(Rows.Count, "I").End(3).Row

son = WorksheetFunction.Max(sabah, öğle, akşam)
If WorksheetFunction.CountIf(Range("F1:F" & son), Cells(a, "A")) > 0 Then
    For i = 2 To son
        If Cells(i, "F") = Cells(a, "A") Then
            Cells(i, b + 5) = Target
        End If
    Next
ElseIf Target <> "" Then
    Cells(son + 1, "F") = Cells(a, "A")
    Cells(son + 1, b + 5) = Target
End If
    
    

End Sub

Eğer asıl dosyanız bu yapıda değilse ve kodları uyarlayamazsanız asıl dosyanızla aynı yapıda dosya paylaşın ki ona göre kodları güncelleyelim.
 
En ideali makrodur. İlla formülle istiyorsanız E sütununu yardımcı sütun olarak kullanarak şöyle yapılabilir. İsterseniz bu sütunu gizleyebilirsiniz. Belki başka şekillerde de yapılabilir ama ben başka yöntem bilmiyorum maalesef:

E2 hücresine aşağıdaki formülü yazıp aşağı doğru kopyalayın:

Kod:
=EĞER(BOŞLUKSAY(B2:D2)<3;MAK($E$1:E1)+1;"")


F2 hücresine aşağıdaki formülü yazıp aşağı doğru kopyalayın:
Kod:
=EĞERHATA(İNDİS($A$2:$A$10;KAÇINCI(SATIR()-1;$E$2:$E$10;0));"")

G2 hücresine aşağıdaki formülü yazıp sağa ve aşağı doğru kopyalayın:

Kod:
=EĞER($F2="";"";EĞER(DÜŞEYARA($F2;$A$2:$D$10;SÜTUN(B1);0)=0;"";DÜŞEYARA($F2;$A$2:$D$10;SÜTUN(B1);0)))
 
Çok Teşekkür ederim
 
Geri
Üst