Diğer sayfadan arama yapmak

Katılım
21 Şubat 2007
Mesajlar
42
Excel Vers. ve Dili
Windows7 Ofis 2010
selam arkadaşlar daha öncede 1-2 başlık açmıştım fakat yeni başlık altında sormakla umarım hata yapmıyorumdur. Soruma gelince Ekte bulunan örnek çalışmada Sayfa1 deki E7 hücresine girdiğim sorgu ile Sayfa2 deki B ve C sütunlarında arama yaparak sonucu Sayfa1 deki E8 deki hücreye yazdırmak. Arama sonucunda ekteki örnektende anlaşılacağı üzere misal misal Vedat diye bir arama yaptığımda vedat yazılı olduğu hücrenin 1 gerisinde bulunan hücredeki değeri E8 hücresine sonuç olarak yazdırmak eğer vedat diye bir kayıt yok ise böyle bir kayıt yoktur şeklinde bir açıklama ile ikaz etmek. Umarım derdimi anlaşılır dilde yazabilmişimdir. Çalışmada illa bu şekilde olacak diye bir kadie yoktur mantık bu şekilde olacak sadece. Şimdiden ilgilenen arkadaşlara teşekkür ederim.
 

Ali

Uzman
Katılım
21 Temmuz 2005
Mesajlar
7,900
Excel Vers. ve Dili
İş:Excel 2016-Türkçe
Forumdaki Düşeyara ile ilgili örnekleri inceleyiniz. Mantığını anlamakta size yardımcı olacaktır.

E8 hücrenize

=EĞER(EHATALIYSA(DÜŞEYARA(E7;Sayfa2!B2:C8;2;0));"Aranan kriter bulunamadı";DÜŞEYARA(E7;Sayfa2!B2:C8;2;0))

yazınız.
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Merhaba.
Sayın Ali bey cevabı vermiş ama Bende İndis ve kaçıncı formülü ile buldum.
Förmül aşağıda
=EĞER(EĞERSAY(Sayfa2!B2:B8;Sayfa1!E7)=0;"ARANAN KRİTER BULUNAMADI";İNDİS(Sayfa2!A2:E8;KAÇINCI(E7;Sayfa2!B2:B8;0);1))
Ayriyetten ekli dosyayı inceleyiniz.:cool:
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,372
Excel Vers. ve Dili
Ofis 365 Türkçe
Bende Makro ile çözüm önerecektim, her ne kadar soruyu soran kişi benzer soruya verilen yanıtları dikkate almamış olsa da ...

Sayın Ali, sanırım sizin formülünüzde değişiklik yapmak gerek, gerekçek aranacak olan değer isim ya da rakam olmasına göre değişiyor

Aşağıdaki kodları ilgili sayfanın kod bölümüne ekleyiniz

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [E7]) Is Nothing Then Exit Sub
Set s2 = Sheets("Sayfa2")
Buldum = 0
For i = 2 To s2.[A65536].End(3).Row
If [E7] = s2.Cells(i, 2) Or [E7] = s2.Cells(i, 3) Then
[E8] = s2.Cells(i, 1)
Buldum = 1
Exit For
End If
Next i
If Buldum <> 1 Then [E8] = "Bulamadım"
End Sub

Not : Sayfa2 de Raflar her hücrede yazılmalı




Fonksiyon ile çözüm :

Kod:
=IF(ISERROR(IF(ISNUMBER(E7);INDEX(Sayfa2!A2:A8;MATCH(E7;Sayfa2!C2:C8;0));INDEX(Sayfa2!A2:A8;MATCH(E7;Sayfa2!B2:B8;0))));"Bulamadım";IF(ISNUMBER(E7);INDEX(Sayfa2!A2:A8;MATCH(E7;Sayfa2!C2:C8;0));INDEX(Sayfa2!A2:A8;MATCH(E7;Sayfa2!B2:B8;0))))
 
Son düzenleme:
Katılım
17 Şubat 2006
Mesajlar
981
Excel Vers. ve Dili
M.Office Excel 2003 Tr.
E8 hücresine

=EĞER(EHATALIYSA(DOLAYLI("sayfa2!"&"A"&KAÇINCI(E7;Sayfa2!B2:B8;0)+1));"Aranan Kriter Yok";DOLAYLI("sayfa2!"&"A"&KAÇINCI(E7;Sayfa2!B2:B8;0)+1))

Yazın
 

N.Ziya Hiçdurmaz

Özel Üye
Katılım
28 Nisan 2007
Mesajlar
2,218
Excel Vers. ve Dili
Office 2013 TR / 32 Bit
Sub test()
Set s1 = Sheets("sayfa1")
Set s2 = Sheets("sayfa2")
For Each bak In s2.Range("b2:b8")
If s1.Range("e7") = bak.Value Then
bak.Offset(0, -1).Copy
s1.Range("e7").Offset(1, 0).PasteSpecial
End If
Next
Application.CutCopyMode = False
End Sub
 
Katılım
21 Şubat 2007
Mesajlar
42
Excel Vers. ve Dili
Windows7 Ofis 2010
arkada&#351;lar hepinize &#231;ok te&#351;ekk&#252;r ederim say&#305;n Necdet_Yesertener vermi&#351; oldu&#287;u kodlar s&#252;per oldu ellerinize kollar&#305;n&#305;za sa&#287;l&#305;k yaln&#305;z anlayamad&#305;&#287;&#305;m arama yaparken aranan sayfada BARI&#350; BODUR yaz&#305;yor misal direk BARI&#350; BODUR diye aratt&#305;&#287;&#305;mda raf numaras&#305;n&#305; veriyor fakat sadece BARI&#350; yada BODUR yazd&#305;&#287;&#305;mda bulam&#305;yor bu benden mi kaynaklan&#305;yor yoksa olmas&#305; gereken bumudur. B&#252;y&#252;k k&#252;&#231;&#252;k harf ay&#305;r&#305;m&#305;da yapmakta.

c&#252;mleten iyi g&#252;nler dilerim.
 
Son düzenleme:
Üst