Eğer İçeriyorsa Sağındaki Değeri Yaz Formülü

Katılım
4 Kasım 2005
Mesajlar
158
Selam;

Ekte örnek dosyayı ekledim. Yapmak istediğim A sütununda yer alan bilgilerin içerisinde N sütunundaki verilerden biri varsa N sütununun solundaki değeri yazsın. Sitede benzer bi konu bulamadım, umarım bi yolu vardır.

Şimdiden teşekkürler...

NOT: Ekteki dosya güncellenmiştir...
 

Ekli dosyalar

Son düzenleme:

Korhan Ayhan

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

Formülün çok uzamaması için bir yardımcı sütun kullanarak çözüm hazırladım. İncelermisiniz.
 

Ekli dosyalar

Katılım
4 Kasım 2005
Mesajlar
158
teşekkürler, ama istediğim tam olarak bu değildi. örnek dosyayı tekrar düzeltmem gerekiyor sanırım, çünkü a sütununa direk okhan mühendislik diye de yazılabiliyor orada sorun çıkıo
 
Son düzenleme:

Korhan Ayhan

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

Eğer cümle içindeki aranan kelimenin yeri değişkense verdiğim formül bir işe yaramaz. Bu durumda makro ile çözüm aramanız gerekecek.
 
Katılım
4 Kasım 2005
Mesajlar
158
Merhaba,

Eğer cümle içindeki aranan kelimenin yeri değişkense verdiğim formül bir işe yaramaz. Bu durumda makro ile çözüm aramanız gerekecek.

=EĞER(EĞERSAY(A1:E20;"*l.t.d*")>0;"Limited";EĞER(EĞERSAY(A1:E20;"*ltd*")>0;"Limited";EĞER(EĞERSAY(A1:E20;"* aş*")>0;"Anonim Şirketi";EĞER(EĞERSAY(A1:E20;"*a.ş*")>0;"a.ş şirketi";""))))

şeklinde bi formül var ama bu işe yaramıyor, makrodan çok anlamadığımdan böyle bi yol aradım ama olmadı, anlaşılan office de buna makrosuz are yok
 

Ömer

Moderatör
Yönetici
Katılım
18 Ağustos 2007
Mesajlar
22,184
Excel Vers. ve Dili
Microsoft 365 Tr
Ofis 2016 Tr
teşekkürler, ama istediğim tam olarak bu değildi. örnek dosyayı tekrar düzeltmem gerekiyor sanırım, çünkü a sütununa direk okhan mühendislik diye de yazılabiliyor orada sorun çıkıo
Merhaba,

B2:

Kod:
=EĞER(TOPLA(ESAYIYSA(MBUL($N$1:$N$6;A1))+0)=0
 ;"";İNDİS($O$1:$O$6;MAK(ESAYIYSA(MBUL($N$1:$N$6;A1))*SATIR($N$1:$N$6))))
Dizi formülüdür. ctrl + shift + enter tuş kombinasyonu ile girişini tamamlayınız.

.
 

Korhan Ayhan

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

Ekteki dosyada kullanıcı tanımlı fonksiyon ile çözüm hazırladım.

Hücrede kullanım şekli;
Kod:
[B][COLOR=blue]=ÖZEL_ARA(Aranan_Veri;Aranan_Adres;Sütun_İndis_Sayısı)[/COLOR][/B]
[B][COLOR=red]=ÖZEL_ARA(A1;N:N;1)[/COLOR][/B]
[/CODE]


Kullanılan kod;

Kod:
Option Explicit
 
Function ÖZEL_ARA(Hücre As Range, _
                  Aranan_Adres As Range, _
                  Sütun_İndis_Sayısı As Byte)
    Dim Veri() As String, X As Byte, BUL As Range
    
    Veri = Split(Application.Trim$(Hücre), " ")
    
    For X = 1 To UBound(Veri)
        Set BUL = Aranan_Adres.Find(Veri(X))
        If Not BUL Is Nothing Then
            ÖZEL_ARA = BUL.Offset(0, Sütun_İndis_Sayısı)
            Exit For
        End If
    Next
    
    ÖZEL_ARA = IIf(ÖZEL_ARA = Empty, "YOK", ÖZEL_ARA)
End Function
 

Ekli dosyalar

Katılım
4 Kasım 2005
Mesajlar
158
Merhaba,

B2:

Kod:
=EĞER(TOPLA(ESAYIYSA(MBUL($N$1:$N$6;A1))+0)=0
 ;"";İNDİS($O$1:$O$6;MAK(ESAYIYSA(MBUL($N$1:$N$6;A1))*SATIR($N$1:$N$6))))
Dizi formülüdür. ctrl + shift + enter tuş kombinasyonu ile girişini tamamlayınız.

.
ilginiz için teşekkürler sorun çözülmüştür :)

Düzenlenmiş halini yardımcı olması amacıyla ekledim, formül için tekrar teşekkür ederim...
 

Ekli dosyalar

Katılım
4 Kasım 2005
Mesajlar
158
Merhaba,

Ekteki dosyada kullanıcı tanımlı fonksiyon ile çözüm hazırladım.

Hücrede kullanım şekli;
Kod:
[B][COLOR=blue]=ÖZEL_ARA(Aranan_Veri;Aranan_Adres;Sütun_İndis_Sayısı)[/COLOR][/B]
[B][COLOR=red]=ÖZEL_ARA(A1;N:N;1)[/COLOR][/B]
[/CODE]


Kullanılan kod;

Kod:
Option Explicit
 
Function ÖZEL_ARA(Hücre As Range, _
                  Aranan_Adres As Range, _
                  Sütun_İndis_Sayısı As Byte)
    Dim Veri() As String, X As Byte, BUL As Range
    
    Veri = Split(Application.Trim$(Hücre), " ")
    
    For X = 1 To UBound(Veri)
        Set BUL = Aranan_Adres.Find(Veri(X))
        If Not BUL Is Nothing Then
            ÖZEL_ARA = BUL.Offset(0, Sütun_İndis_Sayısı)
            Exit For
        End If
    Next
    
    ÖZEL_ARA = IIf(ÖZEL_ARA = Empty, "YOK", ÖZEL_ARA)
End Function
sanırım bu şekilde daha hızlı çalışır, teşekkürler. Ama bi sorun var yıldız inş yazanları bulmasını isterken formül yıldız içerenleri arıyor sadece ve yıldız inşaat yerine av.çiçek yıldızı getirdi :(
 
Son düzenleme:
Katılım
4 Kasım 2005
Mesajlar
158
Bi yerde takıldım :(

tabloda f sütununa hem makro hem de formüllü denedim.

1- makroda yıldız inş şeklinde bulması gerekirken sadece yıldız olanları arayıp çiğdem yıldız ı buldu. amacım aslında e sütunundaki açıklamalar içerisinde m sütunundaki isimleri tam içeren veri varsa m in yanındaki değeri yazsın şeklindeydi.

2- formüldeyse nedense şu anda çalışmıyor ve 0 olarak geliyor, dönüştürürken biyerde hata yaptım sanırım :(


DÜZELTME : Makroyu çözemedim ama formülü hallettin, ilginiz için tekrar teşekkürler :)
 

Ekli dosyalar

Son düzenleme:
Katılım
9 Mayıs 2018
Mesajlar
4
Excel Vers. ve Dili
Microsoft Office Professional Plus 2010
Altın Üyelik Bitiş Tarihi
10/05/2019
Merhaba,

Benzer bir sorun bede yaşıyorum. Yapmak istediğim şey şu ; A hücreleri, G hücrelerindeki kelimeyi içeriyorsa içeriyorsa, B hücresine H hücresini yaz.

A
abcd18asd
abcdefg17asd
abc16defgh

G - H
17 - 2017
18 - 2018
19 - 2019
 
Üst