• DİKKAT

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

Like operatörü

Katılım
8 Haziran 2007
Mesajlar
401
Excel Vers. ve Dili
excel fonksiyonlar
Forumde emei geçen herkese merhaba.

İki string sütunu birbiri ile for döngüsüyle eşleştirmeye çalışıyorum. Önce A sütunundaki verileri C sütununda arayacak
eğer uymuyorsa C sütunundaki verileri A sütununda arayacak .
Daha sonra da eşleşenleri C sütunundaki sıralamaya göre C deki verinin karşılığı olacak şekilde D sütununda yeniden sıralayacak. Bunun için de like operatörünü kullanmayı denedim.Ama joker karakterleri kullanmayı beceremedim.İlgilenen arkadaşlara şimdiden teşekkürler.
 

Ekli dosyalar

Merhaba;

Ekteki denemeyi inceler misin?
Bir defa eşleşen değer tekrar kullanılamayacak şekilde düzenledim.
 

Ekli dosyalar

Son düzenleme:
Merhaba;

Ekteki denemeyi inceler misin?
Bir defa eşleşen değer tekrar kullanılamayacak şekilde düzenledim.

Hocam emeğiniz ve ilginiz için çok teşekkür ederim. Kodlar çalışıyor. Yalnız küçük bir sorun var. A sütunundaki verileri Z-A biçiminde sıralayıp makroyu çalıştırdığımda Sheffield Wednesday ve Sheffield United' ın yer değiştirdiğini gördüm. Eşleşme Sheffield United - Sheffield Wednesday ,Sheffield Wednesday - Sheffield United biçiminde oluyor. A-Z biçimindeki sıralamada
herhangi bir sorun yok. Doğrusu neden böyle olduğunu da anlamış değilim.
Kodları da aşağıdaki şekilde düzenledim. Aşağıdaki kod düzeninde eşleşmeyen verinin karşısına E sütununda 0 yazarsa bu fakiri sevindirmiş olursunuz. :) İlginiz ve emeğiniz için tekrar teşekkürler. :)

Range("B:C").ClearContents
Range("E:E").ClearContents

For i = 1 To Range("A" & Rows.Count).End(3).Row
For j = 1 To Range("D" & Rows.Count).End(3).Row
kr1 = Cells(i, "A"): kn1 = Cells(i, "B")
kr2 = Cells(j, "D"): kn2 = Cells(j, "E")
bos = InStr(1, kr1, " ")
If bos > 0 Then kr3 = Left(kr1, bos - 2) Else kr3 = Left(kr1, Len(kr1) - 1)
If kr2 Like kr3 & "*" And kn1 = "" And kn2 = "" Then

Cells(j, "E") = Cells(i, "A")


GoTo 20
End If
Next j
20:
Next i

For i = 1 To Range("D" & Rows.Count).End(3).Row
For j = 1 To Range("A" & Rows.Count).End(3).Row
kr1 = Cells(i, "D"): kn1 = Cells(i, "E")
kr2 = Cells(j, "A"): kn2 = Cells(j, "B")
bos = InStr(1, kr1, " ")
If bos > 0 Then kr3 = Left(kr1, bos - 2) Else kr3 = Left(kr1, Len(kr1) - 1)
If kr2 Like kr3 & "*" And kn1 = "" And kn2 = "" Then

Cells(i, "E") = Cells(i, "D")

GoTo 40
End If
Next j
40:
Next i
 
Kodları istediğin şekilde değiştirdim.
2 nolu mesajdaki dosyayı güncelliyorum.
 
Birşey değil.
İşini gördüğüne sevindim.
 
Geri
Üst