Hücre içinde 2 farklı kelime arama

Katılım
12 Ekim 2017
Mesajlar
2
Excel Vers. ve Dili
2010
Merhaba,

Elimde stok verileri var. Bunu makro ile daha anlaşılır ve basit hale getirmek istiyorum.
Örnek tablom;

Adı ------------------------------------- |Miktar -|OlcuBirimi
PARİS AYNALI ŞİFONYER PAKET 6-1 |31,00 |Adet
PARİS AYNALI ŞİFONYER PAKET 6-2 |31,00 |Adet
PARİS AYNALI ŞİFONYER PAKET 6-3 |32,00 |Adet
PARİS AYNALI ŞİFONYER PAKET 6-4 |29,00 |Adet
PARİS AYNALI ŞİFONYER PAKET 6-5 |30,00 |Adet
PARİS AYNALI ŞİFONYER PAKET 6-6 |24,00 |Adet
İSTANBUL AYNALI ŞİFONYER PAKET 3-1 |0,00 |Adet
İSTANBUL AYNALI ŞİFONYER PAKET 3-2 |0,00 |Adet
İSTANBUL AYNALI ŞİFONYER PAKET 3-3 |0,00 |Adet


A stununda birbirinden farklı 1500 adet hücre var. Ben A stunundaki stok isimlerinde "PARİS" VE "ŞİFONYER" kelimelerinin aynı anda geçtiği hücreleri bulup, bunların karşısındaki sayılardan en küçüğünü getirmesini istiyorum. Yani ben yeni sayfada A1 hücresine "PARİS ŞİFONYER" manuel olarak (yada nasıl yazdırmam uygun olur?) yazacağım fakat B1 hücresine yazdığım formül sayesinde bana en düşük sayı olan 24 sayısını getirmeli.

5 gündür min, düşeyara, mbul, indis, kaçıncı vs. kombinasyonlarını deneyerek yapmaya çalışıyorum. İki kelimenin aynı hücrede aynı anda bulunma koşulunu bir türlü sağlayamadım. Umarım yardım eden çıkar.
 

antonio

Destek Ekibi
Destek Ekibi
Katılım
13 Şubat 2011
Mesajlar
1,161
Excel Vers. ve Dili
Microsoft Office Professional Plus 2013 Türkçe
Merhaba,
A sütununda malzeme isimleri, B sütununda adet olarak en küçüğünü bulmak istediğiniz sayıların bulunduğunu varsayarak aşağıdaki kodları yazdım.

Kod:
Sub en_kucuk_miktar()
Dim sh As Worksheet, ss As Long, z As Object, veri As Object
Dim sat As Long

Set sh = Sheets("Sayfa1")
ss = sh.Range("A56789").End(3).Row
Set z = CreateObject("VBScript.regexp")
    z.Global = True
    z.Pattern = "(AYNALI)|(ŞİFONYER)"
    For i = 1 To ss
        Set veri = z.Execute(sh.Range("A" & i).Value)
        If veri.Count = 2 And sh.Cells(i, 2).Value > 0 Then
            If i > 1 Then
                deg = (sh.Cells(i, 2).Value * 1)
                If deg < az Then
                    az = deg
                    sat = i
                End If
            ElseIf i = 1 Then
                deg = (sh.Cells(i, 2).Value * 1)
                az = deg
                sat = i
            End If
        End If
    Next i
    MsgBox "Aranan verilerden en düşük değeri içeren: " & _
            az & vbCrLf & "Bulunduğu satır: " & sat, vbInformation, "antonio"
End Sub
 
Katılım
12 Ekim 2017
Mesajlar
2
Excel Vers. ve Dili
2010
O kadar zaman uğraştıktan sonra cevabın bu kadar kısa sürede gelmesi beni şok etti. Çok teşekkür ederim vakit ayırdığınız için. Sağolun.
 

antonio

Destek Ekibi
Destek Ekibi
Katılım
13 Şubat 2011
Mesajlar
1,161
Excel Vers. ve Dili
Microsoft Office Professional Plus 2013 Türkçe
O kadar zaman uğraştıktan sonra cevabın bu kadar kısa sürede gelmesi beni şok etti. Çok teşekkür ederim vakit ayırdığınız için. Sağolun.
Makroların gücü, onları anlamaya başladıktan sonra daha iyi anlaşılır.
İyi çalışmalar.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,235
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Alternatif olarak Sn. muygun'un eklediği dosyada C2 hücresine aşağıdaki DİZİ formülü uygulayarak kullanabilirsiniz.

Kod:
=MİN(EĞER(EĞER(ESAYIYSA(MBUL(rapor!A2;data!A2:A41));SATIR(data!A2:A41))=EĞER(ESAYIYSA(MBUL(B2;data!A2:A41));SATIR(data!A2:A41));data!B2:B41))
 
Katılım
12 Şubat 2012
Mesajlar
2
Excel Vers. ve Dili
office 2003 türkçe
Merhaba arkadaşlar. ben excell'i uzun zamandır kullanıyorum ama makrolardan anlamıyorum.Bende arkadaşın dediği gibi bir sayfadaki hücrelerden içinde aradığım iki kelime geçenleri bulmak istiyorum. Mesela "PARİS" VE "ŞİFONYER" kelimelerinin aynı anda geçtiği hücreleri istiyorum. nasıl yapabilirim.
 
Katılım
12 Kasım 2010
Mesajlar
195
Excel Vers. ve Dili
2007 türkçe
Altın Üyelik Bitiş Tarihi
14-07-2022
Merhaba arkadaşlar. ben excell'i uzun zamandır kullanıyorum ama makrolardan anlamıyorum.Bende arkadaşın dediği gibi bir sayfadaki hücrelerden içinde aradığım iki kelime geçenleri bulmak istiyorum. Mesela "PARİS" VE "ŞİFONYER" kelimelerinin aynı anda geçtiği hücreleri istiyorum. nasıl yapabilirim.
yani eğer makro şart değilse, örneğin a1 den a9 a kadar

paris şifonyer
paris
şifonyer
paris şifonyer
paris şifonyer
paris
şifonyer
şifonyer
şifonyer

şeklinde giden satırlar olduğunu düşünelim, siz sadece "paris şifonyer" yazan hücre sayısını arıyorsanız ; =EĞERSAY(A1:A9;"paris şifonyer") formülünü kullanabilirsiniz. tırnak işaretlerinin arasına aramak istediğiniz kelimeyi yazarak deneyebilirsiniz
 
Katılım
12 Şubat 2012
Mesajlar
2
Excel Vers. ve Dili
office 2003 türkçe
tam anlatamadım ben herhalde. şöyle düşünün stok kayıtlarında bir malzeme arıyorum misal "çekiç sapı" ama, "çekiç sap" yada "sap çekiç" yada "saplı çekiç" olarak yazılmış olabilir. ben normal ctrl+f komutuyla aradığımda tam yazımını girmeyince çıkmıyor. dolayısıyla hem içinde sap hemde çekiç geçen hücreleri bulmak istiyorum.
 
Katılım
6 Mart 2005
Mesajlar
6,233
Excel Vers. ve Dili
Excel Vers. ve Dili:
Office 2016 TR 64 Bit
Altın Üyelik Bitiş Tarihi
22/12/2022
A1 de malzeme ismi yazılı ise B1 kopyala yapıştır.Koşullu biçimlendirme ile de yapılabilir.
Örnek dosya yükleyip linki burda paylaşırsan daha kolay çözüm bulunabilir.Kolay gelsin.
Kod:
=EĞER(EĞERSAY(A1:A1;"*çekiç*")+EĞERSAY(A1:A1;"*sap*")>=1;"Var";"Yok")
 
Üst