• DİKKAT

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

Listbox'ta Mükerrer Kayıt varsa

  • Konbuyu başlatan Konbuyu başlatan unfors
  • Başlangıç tarihi Başlangıç tarihi
Katılım
30 Ekim 2010
Mesajlar
108
Excel Vers. ve Dili
2007 Türkçe
Kod:
Dim i As Long
Dim j As Long
    With List1
        For i = 0 To .ListCount - 1
            For j = .ListCount To (i + 1) Step -1
                If .List(j) = .List(i) Then
                    .RemoveItem j
                End If
            Next
        Next
    End With

yukarıdaki kod ile listbox içinde aynı olan kayıtları siliyorum. Yalnız silmeden önce mükerrer kayıt olup olmadığını kontrol etmek istiyorum. Listbox'a tıklayınca mükerrer kayıt varsa msgbox ile bildirmesi gerekiyor.
 
Merhaba.

Önce cevabımın altındaki İMZA bölümünü okuyunuz.

Verdiğiniz kod'un nasıl tetilendiği anlaşılmıyor ( Sub.... satırı yok).

Tavsiyem, Listbox'ta mükerrerlik kontrolünü listbox'a veri aktarırken yapmanız yönünde.
Ekleme sırasında kontrol / engelleme yapılırsa daha pratik olur diye düşünüyorum.

İsteğinize gelince (belirttiğim gibi kod'un nasıl tetiklendiğini bilemiyoruz), verdiğiniz kod'da .Remove.Item j satırının hemen üstüne;
-- bilgilendirme istiyorsanız
MsgBox "Veri silinecek.." gibi satır ekleyebilirsiniz,
-- verilecek onaya göre silme/silmeme kararı verilmesini istiyorsanız;

cevap = MsgBox("Silme işlemini onaylıyor musunuz ?", vbYesNo")
If cevap = vbYes Then .Remove j
gibi bir yapı kullanabilirsiniz.
 
Aktarım yaparken Kontrol edebiliyorum. Kod buton ile çalışacak ve Listbox'ta mükerrer kayıt varsa bildirim yapacak. Yukarıda Kod'da ".RemoveItem j" yerine Msgbox "Kayıt var" olarak ekledim ama devamlı olsada olmasa da kayıt var diyor!
 
Geri
Üst