Kaçıncı

Katılım
5 Şubat 2008
Mesajlar
231
Excel Vers. ve Dili
2003
Selamlar,
Yapmak istediğim şey ekli dosyada belirtilmiştir.
Yardımcı olabilecek arkadaşlara şimdiden teşekkürler.
 

Ekli dosyalar

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,728
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selamlar,

Bu işlem için en iyisi kullanıcı tanımlı fonksiyon kullanmaktır. Yardımcı sütunlar kullanarak yerleşik formüllerle de çözüm bulmak mümkündür.

Önerdiğim kullanıcı tanımlı fonksiyon aşağıdaki parametreleri içermektedir.

Kod:
=SIRA_BUL(Aralık;Kriter;Sıra)

Boş bir modüle uygulayın.

Kod:
Option Explicit
 
Function SIRA_BUL(Aralık As Range, Kriter As Range, Sıra As Byte)
    Dim Hücre As Range, Ayır As Variant, X As Integer, Say As Long
       
    Application.Volatile True
    
    Say = 0
    
    Set Aralık = Application.Intersect(Aralık, Aralık.Parent.UsedRange)
    
    For Each Hücre In Aralık
        If InStr(1, Hücre.Value, "-", vbTextCompare) > 0 Then
            Ayır = Split(Hücre.Value, "-")
                For X = 0 To UBound(Ayır)
                    If Kriter = CDbl(Ayır(X)) And X + 1 = Sıra Then
                        Say = Say + 1
                        Exit For
                    End If
                Next
        End If
    Next
    
    SIRA_BUL = Say
End Function

Ekteki örnek dosyayı inceleyiniz.
 

Ekli dosyalar

Katılım
5 Şubat 2008
Mesajlar
231
Excel Vers. ve Dili
2003
Selamlar;
Eğer yapmak istediğim şey yapılamıyacak bir şeyse belirtirseniz sevinirim.
 
Katılım
5 Şubat 2008
Mesajlar
231
Excel Vers. ve Dili
2003
Sayın Korhan Bey,
Ellerinize sağlık çok güzel olmuş. Yalnız bir şey sormak istiyorum. Benim verdiğim küçük bir örnekti ben çalışmayı genişletsem =SIRA_BUL($A$2:$A$13,$B11,SÜTUN()-2 bu formülün üzerinde değişiklik yaparak bulabilir miyim? Yoksa başka kod da mı değişiklik yapmak gerekiyor.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,728
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selamlar,

Asıl dosyanızdaki verilerde örnek dosyanızdaki gibiyse formül üzerinde değişiklik yapmanız yeterli olacaktır.

Üstteki mesajımdaki koda hızlı çalışması için küçük bir eklenti yaptım. Son halini kullanabilirsiniz. Çok satırlı datalarda biraz yavaş çalışabilir.
 
Katılım
5 Şubat 2008
Mesajlar
231
Excel Vers. ve Dili
2003
Selamlar,

Asıl dosyanızdaki verilerde örnek dosyanızdaki gibiyse formül üzerinde değişiklik yapmanız yeterli olacaktır.

Üstteki mesajımdaki koda hızlı çalışması için küçük bir eklenti yaptım. Son halini kullanabilirsiniz. Çok satırlı datalarda biraz yavaş çalışabilir.
Selamlar Korhan Bey,
Ben kendi dosyamda denedim ama beceremedim. Acaba müsaitseniz dosyaya bakabilir misiniz? Nerede hata yapıyorum acaba.
 

Ekli dosyalar

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,728
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selamlar,

I2 hücresindeki formülde kullandığınız SÜTUN()-2 ifadesi size 1 değerini üretmesi gerekirken 9-2 = 7 değerini üretmektedir. Bu da sonuçların hatalı olmasına sebep olmaktadır. Bunun yerine I2 hücresine aşağıdaki formülü uygulayınız.

Kod:
=SIRA_BUL($G:$G;$H2;SOLDAN(I$1;1))
Diğer formüllerinizede bu mantığa göre düzeltiniz.
 
Katılım
5 Şubat 2008
Mesajlar
231
Excel Vers. ve Dili
2003
Sayın Korhan Bey;
Çok teşekkür ederim ellerinize sağlık.
 
Üst