• DİKKAT

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

Bir tabloda karmaşık arama ve veri bulma

  • Konbuyu başlatan Konbuyu başlatan Jeeday
  • Başlangıç tarihi Başlangıç tarihi
Katılım
7 Mayıs 2006
Mesajlar
367
Excel Vers. ve Dili
2019 İngilizce
Başlıktan da anlaşılacağı gibi ekteki örnek dosyada bir tablo mevcut. Verilen kriterlere göre listeleme yaptırmak istiyorum.
 

Ekli dosyalar

Merhabalar.

Umarım yanlış anlamadım.

Ekteki belgeyi test ediniz.

Doğru sonuçlar alıyorsanız üstten aşağı boşluksuz sıralamak mesele değil elbette.
 

Ekli dosyalar

Son düzenleme:
Merhaba. Konuyu ben açmadım ama kendimi geliştirme açısından inceliyordum. ve birkez daha gördüm ki "Ömer hocam sen neymişsin yahu" :)



Merhabalar.

Umarım yanlış anlamadım.

Ekteki belgeyi test ediniz.

Doğru sonuçlar alıyorsanız üstten aşağı boşluksuz sıralamak mesele değil elbette.
 
Merhaba. Konuyu ben açmadım ama kendimi geliştirme açısından inceliyordum. ve birkez daha gördüm ki "Ömer hocam sen neymişsin yahu" :)

Estağfurullah efendim, kendi çapımızda, becerebilirmiyiz diye uğraşıyoruz işte.

İltifat için teşekkürler.
 
Merhaba,

Alternatif olsun, dizi formüldür.AO1 hücresine takım adını yazın.

Kod:
=EĞERHATA(İNDİS($B$1:$B$18;KÜÇÜK(EĞER($A$1:$A$18=$AO$1;EĞER($G$1:$G$18=1;SATIR($1:$18)));SATIR(A1)));"")

makro ile yapmak isterseniz,AO1 hücresine yine takım adını yazın.AP1 hücresine oyun numarasını girin.

Kod:
Sub deneme()
Set con = VBA.CreateObject("adodb.connection")
Set rs = VBA.CreateObject("adodb.recordset")

con.Open "provider=microsoft.ace.oledb.12.0;data source=" & _
ThisWorkbook.FullName & ";extended properties=""Excel 12.0;hdr=yes"""

a = Range("AO1")
b = Range("AP1")

sorgu = "select [OYUNCU ADI] from [PUAN$] WHERE  [TAKIM ADI]='" & a & "' AND [" & b & "] = 1 "
rs.Open sorgu, con, 1, 1
Range("ao2").CopyFromRecordset rs


'MsgBox con.State

End Sub
 
Son düzenleme:
alternatif cevaplar için teşekkür ederim. ufaklıklar rahat bırakmadığı için inceleyemiyorum. yarın tek tek bakıp dönüş yapıcam... elinize sağlık
 
Kod:
Sub deneme()
Set con = VBA.CreateObject("adodb.connection")
Set rs = VBA.CreateObject("adodb.recordset")

con.Open "provider=microsoft.ace.oledb.12.0;data source=" & _
ThisWorkbook.FullName & ";extended properties=""Excel 12.0;hdr=yes"""

a = Range("AO1")
b = Range("AP1")

sorgu = "select [OYUNCU ADI] from [PUAN$] WHERE  [TAKIM ADI]='" & a & "' AND [" & b & "] = 1 "
rs.Open sorgu, con, 1, 1
Range("ao2").CopyFromRecordset rs
End Sub
Bundan sonra.. gelsin ADO'lar. :) :bravo: ;)
 
Merhaba,
Alternatif;
Kod:
=İNDİS(B$1:B$18;KÜÇÜK(EĞER(
   DÜŞEYARA(AO$1;A$1:A$18;1;)=A$1:A$18;
     EĞER(DÜŞEYARA(1;G$1:G$18;1;)=G$1:G$18;
   SATIR(G$1:G$18);18));
SATIR(A1)))
[COLOR="Blue"]Formül dizi formülüdür. CTRL + SHIFT + ENTER ile tamamlayınız.[/COLOR]

Hücre aralıkları Sayın Kuvari' nin formülüne göre baz alınmıştır.

Daxe Syán
 
Son düzenleme:
Ömer Baran'ın hazırladığı dosya tam istediğim gibi oldu. herkese teşekkürler
 
Geri
Üst