• DİKKAT

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

Koşula Göre Yenilenen Değerleri Sayma

  • Konbuyu başlatan Konbuyu başlatan 1omer1
  • Başlangıç tarihi Başlangıç tarihi
Katılım
15 Kasım 2016
Mesajlar
59
Excel Vers. ve Dili
Excel 2016
Merhaba,

Yapmak İstediğim Şeyi Sizlere Aktarmaya Çalışayım Elimde 50 bin üzeri satır sayısı olan bir tablo var. Ben bu tabloda koşula bağlı olarak saydırmak istiyorum nasıl yapabilirim. Örnek Liste Aşağıdadır.

A Sutunu İsimler B Sutunu Kodlar

Ahmet Kaya 4ULS9JE9
Sibel Can UH54976G
Kemal Sunal KRD63827
Tarık Akan HGKL8654
Sibel Can UH54976G
Tarık Akan HGKL8654
Ahmet Kaya H69F64HS
Kemal Sunal KRD63827

Bu Listeye Göre isim ve kod numaraları aynı olanları belirleyecek formülü nasıl yazabilirim.
Ahmet Kayadan 2
Sibel Candan 1
Kemal Sunaldan 1 Gibi Yapmak İstiyorum
 
C1 Hücresine kopyalayınız.Aşağı doğru çoğaltınız.
Kod:
=ÇOKEĞERSAY($A$1:$A$60000;$A1;$B$1:$B$60000;$B1)
 
=ÇOKEĞERSAY(A:A;A1;B:B;"<>"&B1)+1 formülünü deneyin.
 
Teşekkürler Yarın Deneyeceğim.
Bu değerleri farklı bir sayfada sırayla nasıl yazdırabilirim sayfa 2de mesela liste halinde nasıl yapılabilir bu
1-Ahmet Kaya 2
2-Sibel Can 1
Bu şekilde liste yapılabilir mi ?
 
Verileriniz fazla olmasından dosyanızda yavaşlama olabilir. Hız açısından makro kullanmanız daha uygun olur.

Kod:
Sub test()
son = Sheets("Sayfa1").Cells(Rows.Count, 1).End(3).Row
a = Sheets("Sayfa1").Range("A2:B" & son).Value
Set dic = CreateObject("scripting.dictionary")
ReDim b(1 To UBound(a), 1 To 2)
    For i = 1 To UBound(a)
        krt = a(i, 1) & "|" & a(i, 2)
        If Not dic.exists(a(i, 1)) Then
            dic(krt) = dic.Count + 1
            say = dic.Count
            b(say, 1) = a(i, 1)
        End If
        sat = dic(krt)
        b(sat, 2) = b(sat, 2) + 1
    Next i
    Sheets("Sayfa2").Range("A2:B" & Rows.Count).ClearContents
    If say > 0 Then Sheets("Sayfa2").[A2].Resize(say, 2) = b
MsgBox "İşlem bitti.", vbInformation
End Sub
 
Alternatif,

Özet Tablo
 
Verileriniz fazla olmasından dosyanızda yavaşlama olabilir. Hız açısından makro kullanmanız daha uygun olur.

Kod:
Sub test()
son = Sheets("Sayfa1").Cells(Rows.Count, 1).End(3).Row
a = Sheets("Sayfa1").Range("A2:B" & son).Value
Set dic = CreateObject("scripting.dictionary")
ReDim b(1 To UBound(a), 1 To 2)
    For i = 1 To UBound(a)
        krt = a(i, 1) & "|" & a(i, 2)
        If Not dic.exists(a(i, 1)) Then
            dic(krt) = dic.Count + 1
            say = dic.Count
            b(say, 1) = a(i, 1)
        End If
        sat = dic(krt)
        b(sat, 2) = b(sat, 2) + 1
    Next i
    Sheets("Sayfa2").Range("A2:B" & Rows.Count).ClearContents
    If say > 0 Then Sheets("Sayfa2").[A2].Resize(say, 2) = b
MsgBox "İşlem bitti.", vbInformation
End Sub

Denedim Fakat Bir Yerde Yanlışlık Var Sanırım Sayfa2 de a2 hücresine isim b hücresine ne kadar değer olursa olsun 1 yazıyor a3 hücresinede isme aynı b hücresine 275 yazdı. Farklı bir datada denedim. Yapmak İstediğim aşağıdaki gibiydi. Bu arada yardımların için teşekkür ederim.

Ahmet Kaya 2
Sibel Can 1
Tarık Akan 1
 
Son düzenleme:
Özet Tablo ile hazırladığım örnek dosyayı deneyiniz.
Bunu denedim fakat istediğim gibi değil bu ben her koddan kaç tane olduğunu görmek istiyorum yukarıdaki dosyada aynı koddan 2 tane olunca 2 diyor benim istediğim ise aynı kişiye ait kaç farklı kod varsa onu göstersin mesela tarık akandan 10 tane var ama 3 farklı kod var 7 kod aynı 4 yazsın istiyorum yardımın için teşekkür ederim.
 
Özet tabloda satır ve sütunlara alınacak başlıkları değiştirdiğiniz zaman her koddan kimde kaç adet var görebilirsiniz. Yanlış anlamadıysam.
 
8 Nolu mesajınızdaki örnek dosyadı isim ve kod başlıklı sütunları pivot tabloda yan yana sütunlarda nasıl gösteriyorsunuz, ben denediğimde aynı sutunda alt alta sıralanıyorlar. Bunu öğrenmek istedim. Teşekkürler
 
Merhaba Tahsin Bey,

Özet tablo üzerinde bir hücreye tıkladığınızda TASARIM menüsü aktif hale gelir. Orayı tıklayın ve "Rapor Düzeni" bölümünden "Sekmeler Halinde Göster" seçeneğini seçin.
 
Soruya dönecek olursak ben tekrar eden verileri ayrıştırmak istediğinizi düşünmediğim için özet tablo önermiştim.

Veri sayısı çok olduğu için formülle verim almanız zorlaşacaktır.

Bu sebeple ekteki makrolu çözüm dosyasını deneyebilirsiniz.
 

Ekli dosyalar

Korhan hocam cevabınız için çok teşekkür ederim. Bunu öğrenmem çok iyi oldu, pivot tablo daha görsel hale geldi.
 
Korhan hocam 13 nolu mesajınızdaki dosya zip den çıkartırken ve acırken açılmıyor, Dosya biçimi ve uzantısı belli olmadığından....... şeklinde hata veriyor. Bilginize.
 
Normal excel dosyası olarak ekledim...
 
Çok Teşekkür Ederim Tam Aradığım Dosya Ellerine Sağlık
 
Geri
Üst