• DİKKAT

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

Çoklu sütunda Kaçıncı değerini bulmak

Muhammet Okumuş

Destek Ekibi
Destek Ekibi
Katılım
28 Eylül 2007
Mesajlar
4,042
Excel Vers. ve Dili
2013 Türkçe
Arkadaşlar merhaba,
Kaçıncı fonksiyonun makro ile tek sütun değerlerde çalışıyor.

Sub kaçıncı()
a = Range("B2:B4").Value
MsgBox Application.Match("Ali", a, 0)
End Sub

bu kodda sorun yok.

Ama aşağıdaki gibi çoklu sütun olunca hata veriyor.

Sub kaçıncı()
a = Range("B2:C4").Value
MsgBox Application.Match("Ali", a, 0)
End Sub

İstediğimiz sütunda kaçıncı ile nasıl işlem yapabilirim?
 

Ekli dosyalar

FIND (CTRL+F) komutunu deneyiniz.
 
Korhan Bey, bunu makronun içine koyacağım. Veritabanı ile çok uğraştığım için bu yöntemi öğrenmem gerekiyor.
 
FIND komutunu da makronuzun içine koyabilirsiniz.
 
Daha önce hiç Find komutunu kullanmadım ve hiç hakim değilim. Araştırayım biraz.
 
Sub kaçıncı()
süt = 1
Set a = Range("B2:C5")
Set d = a.Find("Ali")
MsgBox d.Row
süt = 2
Set a = Range("B2:C5")
Set d = a.Find("Ali")
MsgBox d.Row

End Sub

Find komutunda sütun değerini nereye eklemem gerekiyor. süt=1 için B sütunu, süt=2 için C sütununda nasıl aratabilirim?
 
Deneyiniz.

C++:
Sub kaçıncı()
    süt = 1
    Set a = Range("B2:C5").Columns(süt)
    Set d = a.Find("Ali")
    MsgBox d.Row
    süt = 2
    Set a = Range("B2:C5").Columns(süt)
    Set d = a.Find("Ali")
    MsgBox d.Row
End Sub
 
Süpersiniz Korhan Bey.
Bunun bir sürü parametresi vardı. Ondan karmaşık geliyordu. Bu çok iyi oldu benim için. Çok teşekkür ederim. Excel yolunda bir basamak daha koydunuz benim için.
 
Günaydın Korhan Hocam,
Küçük bir sıkıntı var sanırım.
Saygılarımla
 

Ekli dosyalar

  • 2020-05-20_08-53-06.png
    2020-05-20_08-53-06.png
    25.7 KB · Görüntüleme: 1
Ali değeri yoksa hata verir. Bunun için;
If Not d Is Nothing Then Msgbox d.Row şeklinde deneyiniz.
 
Merhaba,
Kod:
Sub kaçıncı()
    For süt = 1 To 2
        Set a = Range("B2:C5").Columns(süt)
        Set d = a.Find("Ali")
            If Not d Is Nothing  Then GoTo 99
                [A1] = süt: [A2] = d.Row
99:
    Next süt
End Sub
Bende böyle çözümledim.
İyi çalışmalar
 
Son düzenleme:
Korhan Bey,
Sub Arama_5()
If ActiveCell.Column <> 4 Then Range("D5").Select
Set alan = Range("D5:D1000")
Set bul = alan.Find("*" & Range("P1") & "*", After:=ActiveCell)
If Not bul Is Nothing Then bul.Select
End Sub

kod, aktif hücre D sütununda değilse hata veriyor. Bunun için If koşulu ekledim. Bu hatanın çözümü bu şekil mi olmalı? Koda her çalıştığında bir sonraki değeri bulmasını istiyordum.
 
Sonuç alıyorsanız sorun yoktur.
 
Geri
Üst