• DİKKAT

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

Listedeki kelimelerde arama

  • Konbuyu başlatan Konbuyu başlatan CMSTR
  • Başlangıç tarihi Başlangıç tarihi
Katılım
6 Mart 2008
Mesajlar
9
Excel Vers. ve Dili
AZ ÇOK
Merhaba arkadaşlar, excel de yeniyim maalesef, sizlerin yardımı ile birşeyler öğrenmeye çalışıyoruz. Benim sorunum diyelimki bir kelime listesi var yandaki sütunada benim belirlediğim kelimeler var, ben istiyorumki ilk listenin içinden benim kendi yazdığım kelimeleri arasın ve içinde geçen kelimeleri ayrı bir yerde listelesin.
 

Ekli dosyalar

  • kelime.xls
    kelime.xls
    17 KB · Görüntüleme: 20
  • adsız.JPG
    adsız.JPG
    63 KB · Görüntüleme: 12
Son düzenleme:
Merhaba,

Bu şekilde deneyin.

=EĞERSAY($A$2:$A$30;B2)

Detaylı açıklama için;

Toplama Ve Sayma

.
 
Sonuç kısmına, sayı değeri çıkıyor, ben listedeki var olan kelimeyi yazmasını istiyorum.
 
=EĞER(EHATALIYSA(KAÇINCI("*"&B2&"*";$A$2:$A$30;0));"";İNDİS($A$2:$A$30;KAÇINCI("*"&B2&"*";$A$2:$A$30;0)))

Bu şekilde deneyin.
 
Yardımlarınız için teşekkür ederim arkadaşlar, fakat A sütununda haber le ilgili mesela çeşit çeşit 100 kelime var bunları nasıl listeleyecek?

Böyle olması lazım

A -------------------B------------- C -------------- D----------------

LİSTE ----------Aranacak--------Sonuç
Kelimeler

haber ---------------haber----------haber
haberler -------------klavye---------haberler
habergercek-------------------------habergercek
haberkomedi ------------------------haberkomedi
haberistan---------------------------haberistan
murat--------------------------------klavye
excel
klavye
 
Ekteki resimde tam olarak gösterdim arkadaşlar.
 

Ekli dosyalar

  • liste.jpg
    liste.jpg
    63.2 KB · Görüntüleme: 14
Omer Bey`in yaptigina gore bir duzenleme daha yaptim, konu yanlis anlasilmis olabilir ama yinede ornegimi paylasmak istedim.

C2 icin;

=IFERROR(INDEX($B$1:$B$9,SMALL(IF(COUNTIF($A$2:$A$10,$B$2:$B$10)>0,ROW(INDIRECT("2:10"))),ROW(A1))),"")


=EĞERHATA(INDIS($B$1:$B$9;KÜÇÜK(EĞER(EĞERSAY($A$2:$A$10;$B$2:$B$10)>0;SATIR(DOLAYLI("2:10")));SATIR(A1)));"")

Umarım Turkce olan kismini dogru yazabilmsimdir.
 
Omer Bey`in yaptigina gore bir duzenleme daha yaptim, konu yanlis anlasilmis olabilir ama yinede ornegimi paylasmak istedim.

C2 icin;

=IFERROR(INDEX($B$1:$B$9,SMALL(IF(COUNTIF($A$2:$A$10,$B$2:$B$10)>0,ROW(INDIRECT("2:10"))),ROW(A1))),"")


=EĞERHATA(INDIS($B$1:$B$9;KÜÇÜK(EĞER(EĞERSAY($A$2:$A$10;$B$2:$B$10)>0;SATIR(DOLAYLI("2:10")));SATIR(A1)));"")

Umarım Turkce olan kismini dogru yazabilmsimdir.

Çok teşekkür ederim ama formul çalışmıyor, önceki mesajımdaki ekli dosyama uygulayabilirmisiniz bu formulu
 
calismanizi tekrardan ekledim, 2003 versiyon kullaniyorsaniz iferror bolumunu if(iserror( seklinde duzenleyebilirsiniz, aksi halde calismama sebebi dizi formulu uygulamamaniz olmustur.
 

Ekli dosyalar

Arkadaşlar bu konuda ücretli destek almak istiyorum, istediğimi yapabilecek arkadaşlar Özel Mesaj ile cep tel nosunu yazarsa sevinirim.
 
Module kopyalaıp çalıştırın.

Kod:
Sub Listele()
 
    Dim i As Long, c As Range, Adr As Variant, sat As Long
 
    Application.ScreenUpdating = False
    Range("C2:C" & Rows.Count).ClearContents
 
    sat = 2
    For i = 2 To Cells(Rows.Count, "B").End(xlUp).Row
        With Range("A:A")
            Set c = .Find(Cells(i, "B"))
            If Not c Is Nothing Then
              Adr = c.Address
                Do
                  Cells(sat, "C") = Cells(c.Row, "A")
                  sat = sat + 1
                  Set c = .FindNext(c)
                Loop While Not c Is Nothing And c.Address <> Adr
            End If
        End With
    Next i
 
End Sub
.
 
Module kopyalaıp çalıştırın.

Kod:
Sub Listele()
 
    Dim i As Long, c As Range, Adr As Variant, sat As Long
 
    Application.ScreenUpdating = False
    Range("C2:C" & Rows.Count).ClearContents
 
    sat = 2
    For i = 2 To Cells(Rows.Count, "B").End(xlUp).Row
        With Range("A:A")
            Set c = .Find(Cells(i, "B"))
            If Not c Is Nothing Then
              Adr = c.Address
                Do
                  Cells(sat, "C") = Cells(c.Row, "A")
                  sat = sat + 1
                  Set c = .FindNext(c)
                Loop While Not c Is Nothing And c.Address <> Adr
            End If
        End With
    Next i
 
End Sub
.

Çok teşekkür ederim, çalışıyor süper. :)
 
Geri
Üst