Hücre içinden sorgulayarak Mükerrer Kayıt Uyarısı Alma

m.ensar

Altın Üye
Katılım
5 Nisan 2016
Mesajlar
417
Excel Vers. ve Dili
office 2016 Türkçe
Altın Üyelik Bitiş Tarihi
25-10-2025
Hocalarım Merhaba;
Ek çalışmada SARI renge boyadığım hücreler de görüleceği üzere bir hücre içerisine birden fazla isim ve soy isim yazmam gerekiyor. İstediğim ise varsayalım AHMET DENEME - MEHMET SORGULA adlı kişiler aynı hücrede ben farklı bir hücreye AHMET DENEME yazdığımda bu ismin daha önce girilmiş olduğunu bana bildirmesi. Aynı şekilde Hücrede ALİ BURADA diye bir veri var iken ben yanına ALİ BURADA - AHMET DENEME yazmam gerektiğinde de AHMET DENEME daha önce kaydedilmiş diye uyarması.
yardımcı olabilir misiniz?
 

Ekli dosyalar

Katılım
12 Aralık 2015
Mesajlar
1,223
Excel Vers. ve Dili
Türkçe Ofis 2007
Altın üye olmadığımdan dosyanızı göremiyorum.
Test etmek istediğiniz sütunun. A olduğunu, A1 hücresinin başlık ve verilerin A2 hücresinden başladığını varsayarsak.
A3 hücresini seçin, VERİ>Veri Doğrulama>>Veri Doğrulama>Özel>Formül kutusuna aşağıdaki formülü yazıp, TAMAM tıklayın, A3 hücresini kopyalayın, bu hücrenin altında istediğiniz kadar hücre seçip, sağ tıklayın. Özel Yapıştır>Doğrulamayı işaretleyin.
Kod:
=EĞERSAY($A$2:A2;"*"&A3&"*")<>1
 

m.ensar

Altın Üye
Katılım
5 Nisan 2016
Mesajlar
417
Excel Vers. ve Dili
office 2016 Türkçe
Altın Üyelik Bitiş Tarihi
25-10-2025
Ali hocam ilginize teşekkür ediyorum. işyerinin kısıtlamaları nedeniyle dosyayı paylaşım sitelerine atamıyorum deneyip bilgi vereceğim.
 

m.ensar

Altın Üye
Katılım
5 Nisan 2016
Mesajlar
417
Excel Vers. ve Dili
office 2016 Türkçe
Altın Üyelik Bitiş Tarihi
25-10-2025
Ali hocam maalesef olmadı şöyle de bir sorun ortaya çıkıyor hücrede BUSE CAN var diyelim yanına HÜLYA KOÇ ekledim BUSE CAN - HÜLYA KOÇ oldu hücrede ki veri HÜLYA KOÇ' u silmek istediğimde veri doğrulama hatası veriyor BUSE CAN ı da silmek zorunda kalıyor.
Zannederim bu Makro ile olabilecek bir şey çünkü bu kayıt daha önce yapılmış dese dahi HÜLYA KOÇ belki ikinci üçüncü HÜLYA KOÇ burada amaç daha önceki kaydı görüp manuel olarak dosya bulunacak aynı kişi ise dosyalar birleştirilecek farklı kişi ise yeni dosya olarak kayıt yapılacak.
 
Katılım
12 Aralık 2015
Mesajlar
1,223
Excel Vers. ve Dili
Türkçe Ofis 2007
Aynı hücrede ikiden fazla isim soy isim bulunuyor mu?
Bunların hepsinin arasında boşluk tire boşluk " - " şeklinde ayraç bulunuyor mu?
Sonradan ilave edilenler sondakiler mi olacak?
Sonradan ilave edilirken aşağıdaki hücrelerde veri olabilir mi? O zaman n yapılacak
 

muhasebeciyiz

Altın Üye
Katılım
10 Şubat 2006
Mesajlar
847
Excel Vers. ve Dili
Office 2016
64 Bit
Altın Üyelik Bitiş Tarihi
21-12-2027
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim kontrolAraligi As Range
    Dim hucre As Range
    Dim yeniIsim As String
    Dim parcalar() As String
    Dim i As Long
    Dim uyariVerildi As Boolean

    Set kontrolAraligi = Range("E5:E28")

    If Target.Cells.Count > 1 Then Exit Sub
    If Intersect(Target, kontrolAraligi) Is Nothing Then Exit Sub
    If Trim(Target.Value) = "" Then Exit Sub

    parcalar = Split(UCase(Target.Value), " - ")
    uyariVerildi = False

    For i = LBound(parcalar) To UBound(parcalar)
        yeniIsim = Trim(parcalar(i))

        If Not IsNumeric(yeniIsim) Then
            For Each hucre In kontrolAraligi
                If hucre.Address <> Target.Address Then
                    If InStr(UCase(hucre.Value), yeniIsim) > 0 Then
                        MsgBox yeniIsim & " daha önce " & hucre.Address & " hücresine kaydedilmiş!", vbExclamation, "UYARI"
                        hucre.Interior.Color = RGB(255, 255, 0)
                        hucre.Select
                        uyariVerildi = True
                        Exit For
                    End If
                End If
            Next hucre
        End If
        If uyariVerildi Then Exit For
    Next i
End Sub
Bu makro, E5:E28 aralığında bir hücreyi değiştirdiğiniz anda otomatik çalışır ve girilen isim(ler) daha önce başka hücrelerde varsa uyarı verir.
Eğer farklı ayraçlar (örneğin /, |) kullanıyorsan, Split kısmını güncellemen gerekebilir
 
Son düzenleme:

m.ensar

Altın Üye
Katılım
5 Nisan 2016
Mesajlar
417
Excel Vers. ve Dili
office 2016 Türkçe
Altın Üyelik Bitiş Tarihi
25-10-2025
Ali hocam tespitlerinin hepsi doğru aynı hücrede arada - olmak kaydıyla hem isim hem soy isim olacak BUSE CAN - HÜLYA KOÇ gibi bir alt hücresinde AHMET DAĞ tek isimle olabilir.
aralarında boşluk-boşluk (""-"") isimleri ayırmak için olacak
Sonradan ilave edilecek olanların yeri belli değil Tek isimlerin yanına eklenecek örneğin D9 hücresi tek isim soy isim bunun yanına ikinci bir isim soyisim eklenebilir.
tabloyu göremediğin için anlatmaya çalışayım. Bir arşiv dolabı düşünelim hocam bunun her rafına klasörler koyuyoruz klasörlerin içinde de çeşitli kalınlıkta dosyalar var. bazı klasörler 50 dosya alıyor bazıları 12 ben bunları örneğin 10' ar satırlı hale getirmek istiyorum. 50 dosya var ise bunu yan yana BUSE CAN - AHMET DAĞ - HÜLYA KOÇ Şeklinde bir hücrede 2 veya 3 isim soy isim olabilecek. bu isimler arasında mükerrer isim var ise onu tespit ederek dosyaları karşılaştırma yapıp aynı kişi ise dosyalar birleşecek değil ise farklı bir dosya olarak yerini alacak.
Umarım anlatabilmişimdir.
 

m.ensar

Altın Üye
Katılım
5 Nisan 2016
Mesajlar
417
Excel Vers. ve Dili
office 2016 Türkçe
Altın Üyelik Bitiş Tarihi
25-10-2025
Muhasebeciyiz hocam çok güzel elinize emeğinize sağlık ancak yukarıda Ali hocama anlattığım gibi aynı hücreye ikinci bir isim girdiğimde ilk ismi algılıyor. örneğin BUSE CAN ve AHMET DAĞ İsimleri kayıtlı her iki ismi farklı bir hücrede birleştirdiğimde BUSE CAN şu hücrede var diyor ama AHMET DAĞ ı söylemiyor önce AHMET DAĞ ı yazarsam BUSE CAN ı söylemiyor her eğer iki isim de var ise ikisinide gösterebilir mi?
 

m.ensar

Altın Üye
Katılım
5 Nisan 2016
Mesajlar
417
Excel Vers. ve Dili
office 2016 Türkçe
Altın Üyelik Bitiş Tarihi
25-10-2025
MUHASEBECİYİZ hocam tm dır olmuş emeğinize sağlık. sanırım uygulama da bir hata yaptım çok teşekkür ederim
 

m.ensar

Altın Üye
Katılım
5 Nisan 2016
Mesajlar
417
Excel Vers. ve Dili
office 2016 Türkçe
Altın Üyelik Bitiş Tarihi
25-10-2025
Muhasebeciyiz hocam mükemmelsiniz. Çalışmada da gördüğünüz üzere rakamlar var bunlar kişiye ait dosya içinde ki evrak sayıları kod kontrol yaparken aralıkta ki tüm verileri gözden geçiyor haliyle aynı olan rakamları da gösteriyor sayısal verileri göstermesini engelleyebilir miyiz? yani sayı ise dikkate almasın.
Çok teşekkür ederim
 

m.ensar

Altın Üye
Katılım
5 Nisan 2016
Mesajlar
417
Excel Vers. ve Dili
office 2016 Türkçe
Altın Üyelik Bitiş Tarihi
25-10-2025
Değerli vaktinizi ayırdınız Hocam çok teşekkür ederim
 
Katılım
12 Aralık 2015
Mesajlar
1,223
Excel Vers. ve Dili
Türkçe Ofis 2007
Alternatif kodları ilgili sayfanın modülüne yapıştırın.
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
If Target.Column = 5 Then
bak = Split(Target, " - ")
If WorksheetFunction.CountIf(Columns(5), "*" & bak(UBound(bak)) & "*") > 1 Then
MsgBox bak(UBound(bak)) & " isimli kişi E" & WorksheetFunction.Match("*" & bak(UBound(bak)) & "*", Columns(5), 0) & " hücresinde kayıtlı"
Target.Value = Replace(Replace(Target, bak(UBound(bak)), ""), " - ", "")
End If
End If
End Sub
 

m.ensar

Altın Üye
Katılım
5 Nisan 2016
Mesajlar
417
Excel Vers. ve Dili
office 2016 Türkçe
Altın Üyelik Bitiş Tarihi
25-10-2025
Ali hocam sayfa modülüne eklediğimde işlem yapmıyor sayfanın kod bölümüne eklediğimde ise sadece E sütununda işlem yapıyor. Yukarıda ki çalışmanın asılında E5 ile AY500 arasında işlem yaptırıyorum, başka çalışmalarda bu alan E5 ile BC500 gibi alanlarda değişiklik gösterebiliyor. Birde isim benzerliği olabilir aynı isim soy isim de 3 4 farklı kayıt olabilir. çalışmanızda kayıt var dedikten sonra Tamam tıklanınca hücreyi boşaltıyor. Kaydın olup olmadığını görüp kayıt var ise dolaptan o dosyayı alıp bakacak vatandaş aynı kişi ise dosya birleştirecek değil ise kayıta devam edip yeni dosya oluşturacak. İlginize çok teşekkür ediyorum. Sistem izin verse örnek dosya atarım size ama maalesef vermiyor.
Muhasebeci hocamın çalışması tam isteğimi karşılıyor. Her ikinize çok teşekkür ederim
 
Üst