• DİKKAT

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

Belirlenen Hücre Aralığındaki Dolu Hücrelerin İçeriğini Bulsun ve Yazsın

Katılım
9 Şubat 2008
Mesajlar
21
Excel Vers. ve Dili
Excell 2003 İngilizce
Arkadaşlar yapmak istediğim şey şu. AE50:AL50 arasındaki hücrelerde A ya da B ya da C ya da D ya da E harfleri yazabilir. Benim K8 hücresine yazacağım formül AE50:AL50 arasında hangi hücrede bu saydığım harflerden biri varsa bunu bulması. Fakat AE50:AL50 arasında diyelim ki AE50 boş AF50 hücresinde E harfi yazıyor, AG50 boş, AH50 boş, AI50 boş, AJ50 boş, AK50 boş, AL50 hücresinde de C harfi yazıyor. O zaman K8 hücresinde E-C yazsın eğer AE50:AL50 arasındaki tüm hücrelerde A,B,C,D,E harfleri var ise o zaman K8 hücresine A-B-C-D-E yazsın. Yardım edecek arkaşalara şimdiden çok teşekkür ederim.
 
Okurken başım döndü :)
 
Selamlar,

İstediğiniz işlemi kullanıcı tanımlı fonksiyon ile rahatlıkla yapabilirsiniz. Aşağıdaki kodu boş bir modüle uygulayın.

Fonksiyonun kullanım şekli;

=BUL_YAZ(Hücre Aralığı)


Kod:
Option Explicit
 
Function BUL_YAZ(ARALIK As Range)
    Dim HÜCRE As Range, SONUÇ As String
    
    Application.Volatile
    
    For Each HÜCRE In ARALIK
        If UCase(HÜCRE.Value) = "A" Or _
        UCase(HÜCRE.Value) = "B" Or _
        UCase(HÜCRE.Value) = "C" Or _
        UCase(HÜCRE.Value) = "D" Or _
        UCase(HÜCRE.Value) = "E" Then
        SONUÇ = IIf(SONUÇ = Empty, HÜCRE.Value, SONUÇ & "-" & HÜCRE.Value)
        End If
    Next
    
    BUL_YAZ = SONUÇ
End Function
 
Fonksiyonu ve kodları ingilizce olarak derleyebilirseniz çok daha iyi olur.
 
Selamlar,

Neden böyle bir istekte bulundunuz. Fonksiyonu denediniz mi? Çalışmadı mı?
 
Korhan Hocam Excel 2003 ingilizce olduğu için fonksiyon NAME hatası veriyor.
 
Selamlar,

Fonksiyonun çalışmaması için bir sebep görünmüyor. Fonksiyonu uyguladığınız dosyayı kaydedip öyle deneyin.
 
38686210eq0.jpg

Dosyayı kaydettim ama yine aynı hata var.
 
Selamlar,

Fonksiyonu aşağıdaki şekilde değiştirip denermisiniz. Sadace türkçe karakterleri kaldırdım.

Kod:
Option Explicit
 
Function BUL_YAZ(ARALIK As Range)
    Dim HUCRE As Range, SONUC As String
    
    Application.Volatile
    
    For Each HUCRE In ARALIK
        If UCase(HUCRE.Value) = "A" Or _
        UCase(HUCRE.Value) = "B" Or _
        UCase(HUCRE.Value) = "C" Or _
        UCase(HUCRE.Value) = "D" Or _
        UCase(HUCRE.Value) = "E" Then
        SONUC = IIf(SONUC = Empty, HUCRE.Value, SONUC & "-" & HUCRE.Value)
        End If
    Next
    
    BUL_YAZ = SONUC
End Function
 
Geri
Üst