• DİKKAT

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

Soru Tablodaki son veriyi özet tabloya kopyalama

Katılım
6 Ocak 2012
Mesajlar
56
Excel Vers. ve Dili
2007
Merhaba ekteki gibi bir stok listem var. Stoktaki her ürün için bir sayfa açıyorum. Sayfadaki satırlar bazısında 25 bazısında 3 satır gibi değişken. G sütünündaki stok adedinin son hücesine gelip rakamı alacak. Ozet_Stok sayfasında makro ile listelettiğim ürünün yanına stok adını yazsın istiyorum. Böylece sayfalara tek tek bakmak yerine stoğumdaki eksikleri görebileyim.
 

Ekli dosyalar

Merhaba,

Aşağıdaki kodları dener misiniz?

Kod:
Sub Ozet_Stok()

    Dim Sayfa   As Worksheet, _
        i       As Long, _
        j       As Long, _
        Syf     As Worksheet
    
    Set Syf = Sheets("Ozet_Stok")
    i = 1
    Syf.Range("B2:C" & Rows.Count).ClearContents
    
    For Each Sayfa In ThisWorkbook.Worksheets
        If Not Sayfa.Name = Syf.Name Then
            j = Sayfa.Cells(Rows.Count, "B").End(3).Row
            i = i + 1
            Syf.Cells(i, "B") = Sayfa.Name
            Syf.Cells(i, "C") = Sayfa.Range("G" & j)
        End If
    Next Sayfa
    
    MsgBox "Aktarım Bitmiştir...."
    
End Sub
 
Kod:
Sub Ozet_Stok()
    Sheets("Ozet_Stok").Select
    Range("B2:C" & Rows.Count).ClearContents
    sat = 2
    For Each sayfa In ThisWorkbook.Worksheets
        If sayfa.Name <> "Ozet_Stok" Then
            sonSat = sayfa.Cells(Rows.Count, 2).End(3).Row
            Cells(sat, 2) = sayfa.Name
            Cells(sat, 3) = sayfa.Cells(sonSat, "G")
            sat = sat + 1
        End If
    Next sayfa
End Sub
 
Tekrar merhaba, dosyamı kullanmaya başladım. Şöyle bir sorunum oluştu. Listemi güncellediğim de stoğu bitmiş olan kalemleri de listeliyor. Ben olan stokları listelemem gerektiği için değeri 0 (Sıfır) olan satırları manuel siliyorum. Yani stok değeri 0 (Sıfır) olanları listelemesin. Ayrıca en sonda istatistikleri tuttuğum sayfaları da ekliyor. Mesela adı rapor1 ve rapor2 olan sayfaları da eklemesin.
 
Merhaba.

Sayın @veyselemre 'nin müsadesiyle.
Kendisinin verdiği kod'a aşağıda kırmızı renklendirdiğim kısımları eklerseniz
(listelenmemesi gereken istisna sayfa adlarını aşağıdakine benzer şekilde ekleyip/çıkartabilirsiniz)
istediğiniz işlem gerçekleşir.
Rich (BB code):
    For Each sayfa In ThisWorkbook.Worksheets
        If sayfa.Name <> "Ozet_Stok" And _
            sayfa.Name <> "rapor1" And _
            sayfa.Name <> "rapor2" Then
            sonSat = sayfa.Cells(Rows.Count, 2).End(3).Row
            If sayfa.Cells(sonSat, "G").Value > 0 Then
                Cells(sat, 2) = sayfa.Name
                Cells(sat, 3) = sayfa.Cells(sonSat, "G")
                sat = sat + 1
            End If
        End If
    Next sayfa
 
Son düzenleme:
Geri
Üst