• DİKKAT

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

sütundan çoklu veri arama ve hücreye yazdırma

Katılım
4 Ağustos 2006
Mesajlar
4
http://resimyukle.duygusuz.com/image-DF1B_5719BCC4.jpg


Merhaba arkadaşlar. Ekteki resimde örneğini verdiğim işlemi yapmak istiyorum. Formül, verileri KAYNAK ve VERİLERİM sütununda arayıp, İSTEDİĞİM SONUÇ sütunununa yazdıracak.

Örnek olarak;

F3 hücresinin verisi A,C,D olduğu için J3 hücresine yazılmasını istediğim değer 1,3,4 olmalı. Çünkü;
A,B sütunundaki veirlere göre,

A=1
C=3
D=4

umarım anlatabilmişimdir derdimi.
Teşekkür eder iyi çalışmalar dilerim.
 
Aşağıdaki kodları bir modüle kopyalayıp deneyiniz:
Kod:
Sub veriler()
On Error Resume Next
sonid = Cells(Rows.Count, "A").End(3).Row
sonveri = Cells(Rows.Count, "F").End(3).Row
yeni = 3
For veri = 3 To sonveri
    For cat = 1 To Len(Cells(veri, "F"))
        If Mid(Cells(veri, "F"), cat, 1) <> "," Then
            If Cells(yeni, "J") = "" Then
                Cells(yeni, "J") = WorksheetFunction.Index(Range("A3:A" & sonid), _
                WorksheetFunction.Match(Mid(Cells(veri, "F"), cat, 1), Range("B3:B" & sonid), 0))
            Else
                Cells(yeni, "J") = Cells(yeni, "J") & "," & WorksheetFunction.Index(Range("A3:A" & sonid), _
                WorksheetFunction.Match(Mid(Cells(veri, "F"), cat, 1), Range("B3:B" & sonid), 0))
            End If
        End If
    Next
yeni = yeni + 1
Next
    
End Sub
 
Teşekkürler YUSUF44,
Verdiğin kodları modül olarak çalışma sayfasına ekledim fakat daha sonrasına ne verileri nasıl yazdıracağımı anlayamadım.


Edit: Modülü çalıştır deyince oldu. Biraz inceleyip sonucu tekrar bildireceğim. Tekrar teşekkür ederim.
 
Son düzenleme:
Asıl dosyanıza uyarlamak zor çünkü verdiğiniz örnekte veriler tek harften oluşuyordu, asıl dosyanızda ise harflerden değil kelimelerden oluşuyor. ilk dosyada parça al yöntemiyle her karakteri ayrı ayrı inceleyip sonucunu bulmuştum, şimdi öyle bir imkan yok. Kelimelerin uzunluğu sabit olmadığından kelimenin nerde başlayıp nerede bittiğini bulmak zor.

Yerinizde olsam dosyada A ve B sütununun yani kod ile isimlerin yerlerini değiştirirdim. F sütunundaki verilere de Metni Sütunlara Dönüştür işlemi uygulardım. Ondan sonra DÜŞEYARA formülü ya da yine makroyla çözüme ulaşırdım.
 
Kod:
Sub test()
    With CreateObject("Scripting.Dictionary")
        For i = 3 To Cells(Rows.Count, "a").End(3).Row
            .Item(Cells(i, "b").Value) = Cells(i, "a").Value
        Next i
        For i = 3 To Cells(Rows.Count, "f").End(3).Row
            bol = Split(Cells(i, "f").Value, ",")
            For ii = 0 To UBound(bol)
                If .exists(bol(ii)) Then bol(ii) = .Item(bol(ii))
            Next ii
            Cells(i, "J").Value = Join(bol, ",")
        Next i
    End With
End Sub
 
Geri
Üst