Soru? Tekrarlanan kelimeler ve kaçar tane olduğu

Katılım
26 Ekim 2023
Mesajlar
19
Excel Vers. ve Dili
Excel 2016 - Türkçe
Merhaba değerli hocalarım,
excel tablosunun bir sütununda yer alan aynı veya farklı kelimeleri saymasını ve bu kelimelerin kaçar tane olduğunu söylemesini istiyorum.
örneğin B sütununda 1.000'den fazla satırda yer alan kelimeleri;

elma: 5
armut: 8
ayva: 103
şeklinde listeleyecek.
Ben "eğersay" ile bir şeyler yapmaya çalıştım fakat olmadı.
Yardımcı olabilirseniz çok müteşekkir olurum.

VBA da olabilir.
 

Trilenium

Destek Ekibi
Destek Ekibi
Katılım
16 Eylül 2008
Mesajlar
1,113
Excel Vers. ve Dili
Microsoft Office 2019 English
Formül yerine Pivot table kullansanız daha rahat edersiniz.
 

mustafa1205

Altın Üye
Katılım
23 Ekim 2010
Mesajlar
1,262
Excel Vers. ve Dili
Office 2016 / 64 Bit - Türkçe
Altın Üyelik Bitiş Tarihi
18-07-2026
Örnek Dosya Eklerseniz daha kolay ve çabuk cevap bulabilirsiniz
 

tugkan

Altın Üye
Katılım
6 Kasım 2004
Mesajlar
321
Excel Vers. ve Dili
Excel 2016
Türkçe 64 BIT
Altın Üyelik Bitiş Tarihi
16-10-2025
Merhaba değerli hocalarım,
excel tablosunun bir sütununda yer alan aynı veya farklı kelimeleri saymasını ve bu kelimelerin kaçar tane olduğunu söylemesini istiyorum.
örneğin B sütununda 1.000'den fazla satırda yer alan kelimeleri;

elma: 5
armut: 8
ayva: 103
şeklinde listeleyecek.
Ben "eğersay" ile bir şeyler yapmaya çalıştım fakat olmadı.
Yardımcı olabilirseniz çok müteşekkir olurum.

VBA da olabilir.
Bu işlemi yapmak için hem Excel formülleri hem de VBA kullanarak çözüm sunabilirim. İstersen önce formülle başlayalım, ardından VBA ile çözümü de sunabilirim.

Formülle Çözüm (PivotTable Yöntemi)
  1. PivotTable Kullanarak:
    • Tablonuzda herhangi bir hücreyi seçin.
    • Menüden Ekle > PivotTable seçeneğini tıklayın.
    • PivotTable’ı yeni bir sayfaya ekleyin.
    • B Sütununu satır alanına (Row Labels) ve yine B Sütununu değerler alanına (Values) ekleyin.
    • Değerler alanında, Toplam yerine Say (Count) işlemini seçin.
Bu adımlar sonucunda her kelimenin kaç kere geçtiğini listeleyebilirsiniz.

VBA ile Çözüm
Eğer VBA ile yapmak istiyorsanız, aşağıdaki makro her bir benzersiz kelimeyi sayar ve sonuçları başka bir sayfaya yazdırır:

Kod:
Sub KelimeSayaci()
    Dim kelimeDic As Object
    Dim sonSatir As Long
    Dim i As Long
    Dim kelime As String
    Dim ws As Worksheet
    Dim wsSonuc As Worksheet
    
    ' Sözlük oluştur (benzersiz kelimeleri saymak için)
    Set kelimeDic = CreateObject("Scripting.Dictionary")
    
    ' Çalışılan sayfa
    Set ws = ThisWorkbook.Sheets("Sayfa1") ' Sayfa adını ihtiyacınıza göre değiştirin
    
    ' Son satırı bul
    sonSatir = ws.Cells(ws.Rows.Count, "B").End(xlUp).Row
    
    ' Kelimeleri say
    For i = 1 To sonSatir
        kelime = ws.Cells(i, "B").Value
        If kelimeDic.exists(kelime) Then
            kelimeDic(kelime) = kelimeDic(kelime) + 1
        Else
            kelimeDic.Add kelime, 1
        End If
    Next i
    
    ' Sonuçları başka bir sayfaya yazdır
    Set wsSonuc = ThisWorkbook.Sheets.Add
    wsSonuc.Name = "Kelime Sonuçları"
    
    wsSonuc.Cells(1, 1).Value = "Kelime"
    wsSonuc.Cells(1, 2).Value = "Adet"
    
    i = 2
    For Each kelime In kelimeDic.Keys
        wsSonuc.Cells(i, 1).Value = kelime
        wsSonuc.Cells(i, 2).Value = kelimeDic(kelime)
        i = i + 1
    Next kelime
End Sub
Bu VBA kodu şu adımları izler:

  1. "Sayfa1" isimli sayfanın B sütunundaki kelimeleri tarar.
  2. Her bir kelimenin kaç kere tekrarlandığını sayar.
  3. Sonuçları yeni bir sayfada listeler.
Makroyu çalıştırmak için:

  1. Alt + F11 tuşlarına basarak VBA düzenleyicisini açın.
  2. Insert > Module seçeneğinden yeni bir modül ekleyin.
  3. Yukarıdaki kodu bu modüle yapıştırın.
  4. F5 tuşuna basarak makroyu çalıştırın.
Sonuçları yeni bir sayfada görebileceksiniz.

Her iki yöntem de işinizi görecektir!
 
Üst