İsimlerdeki kelimeleri silme

Katılım
18 Mayıs 2009
Mesajlar
1,184
Excel Vers. ve Dili
Excel 2016 Türkçe
Merhaba

Örnek dosyada
A sütununda isimler
B sütununda silinmesi gereken kelimeler
C sütununda da olması gereken hali vardır.

C sütununa gereken formülü ve-veya makroları rica ederim.




Teşekkürler
 
Katılım
18 Mayıs 2009
Mesajlar
1,184
Excel Vers. ve Dili
Excel 2016 Türkçe
Sayın uzmanım tavsiye ettiğiniz dosyayı inceledim, fakat sanıyorum benim istediğim bu dosyada mevcut değil.

Zira bu dosyada belli kelime gruplar, rakam girilerekı eleniyor veya seçiliyor.


Benim örnek dosyada istediğim ise, A sütunundaki isimlerde, B sütunundaki elle girmiş olduğum (herhangi bir düzene, sıraya uymayan kelimeleri elemek. Yani A dan B yi çıkarmak.

Teşekkürler.
 

Ziynettin

Destek Ekibi
Destek Ekibi
Katılım
18 Nisan 2008
Mesajlar
1,105
Excel Vers. ve Dili
office2010
KFT

Kodu boş module iliştirin.

Kod:
Function ayir(hcr1 As Range, hcr2 As Range)
    Set dc = CreateObject("Scripting.Dictionary")
    a = Split(hcr1, " ")
    b = Split(hcr2, " ")
        For Each c In b: dc(UCase(c)) = "": Next c
    Set dx = CreateObject("Scripting.Dictionary")
    For Each c In a
        If c <> "" And Not dc.Exists(UCase(c)) Then dx(c) = ""
    Next c
    ayir = Join(dx.keys, " ")
End Function
formul ....=ayir(A2;B2).... şeklinde deneyiniz.
 
Katılım
18 Mayıs 2009
Mesajlar
1,184
Excel Vers. ve Dili
Excel 2016 Türkçe
KFT

Kodu boş module iliştirin.

Kod:
Function ayir(hcr1 As Range, hcr2 As Range)
    Set dc = CreateObject("Scripting.Dictionary")
    a = Split(hcr1, " ")
    b = Split(hcr2, " ")
        For Each c In b: dc(UCase(c)) = "": Next c
    Set dx = CreateObject("Scripting.Dictionary")
    For Each c In a
        If c <> "" And Not dc.Exists(UCase(c)) Then dx(c) = ""
    Next c
    ayir = Join(dx.keys, " ")
End Function
formul ....=ayir(A2;B2).... şeklinde deneyiniz.
Sayın Ziynettin, eksiksiz hatasız olmuştur. Çok teşekkürler, sağolunuz.
 

baydeniro

Altın Üye
Katılım
26 Ocak 2007
Mesajlar
4,625
Excel Vers. ve Dili
Ofis 2016
Altın Üyelik Bitiş Tarihi
20-02-2025
Ziynettin üstad öğrenmek açısından merak ettim. Buradaki kodlu çözümün YERİNEKOY formülüyle elde edilecek sonuçtan farkı nedir ?
=YERİNEKOY(A2;B2;"") ile de aynı sonuç elde edilebiliyor gördüğüm kadarıyla. Fark konusunda bilgi paylaşırsanız memnun olurum
 
Katılım
18 Mayıs 2009
Mesajlar
1,184
Excel Vers. ve Dili
Excel 2016 Türkçe
Ziynettin üstad öğrenmek açısından merak ettim. Buradaki kodlu çözümün YERİNEKOY formülüyle elde edilecek sonuçtan farkı nedir ?
=YERİNEKOY(A2;B2;"") ile de aynı sonuç elde edilebiliyor gördüğüm kadarıyla. Fark konusunda bilgi paylaşırsanız memnun olurum
Sayın baydeniro, güzel bir alternatif çözüm oldu bahsettiğiniz formül. Hemen denedim ve oldu. Teşekkürler.
 

Korhan Ayhan

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

Ziynettin üstad öğrenmek açısından merak ettim. Buradaki kodlu çözümün YERİNEKOY formülüyle elde edilecek sonuçtan farkı nedir ?
=YERİNEKOY(A2;B2;"") ile de aynı sonuç elde edilebiliyor gördüğüm kadarıyla. Fark konusunda bilgi paylaşırsanız memnun olurum
Önerilen fonksiyon karmaşık kelimeleri kaldıracağı için YERİNEKOY fonksiyonundan daha kullanışlı olacaktır.

Test etmek için B2 hücresinde yazan "1973 MODEL" ifadesini "1973 ARABA" olarak değiştirip hem YERİNEKOY fonksiyonunu hem de @Ziynettin beyin KTF'sini deneyip sonucu gözlemleyin.
 
Üst