• DİKKAT !

    Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak Dosya Yükleme tamamen ücretsizdir.

Çözüldü Listboxtan listboxa veri aktarımında mükerrer kontrolü

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.
Durum
Konu Çözümlendiği İçin Kapatılmıştır.

himmgarip

Excel Dostu
Katılım
27 Mar 2021
Mesajlar
797
Çözümler
96
Aldığı beğeni
884
Excel V
Office 2016 TR
Konu Sahibi
Listbox1 den Listbox2 ye çift tık ile Listbox1 den kayıtları silmeden aşağıdaki kod ile aktarıyorum.

HTML:
Kod:
İçeriği görebilmek için Giriş yap ya da Üye ol.

Peki burada şu kontrolü nasıl yapabilirim?

Eğer Listbox1 e çift tıklama ile kayıt Listbox2 ye daha önce aktarıldıysa, tekrar aktarılmasın. Listbox2 de mükerrer kayıt olmasın.
 
For i = 0 To ListBox1.ListCount - 1
Merhaba.

If ListBox1.Selected(i) = True Then

Mantıken en basit yolu yukardakinin altına aynı döngüyü yazıp tabii listbox2 olacak listbox1 yerine ve bir if şartı ekleyebilirsiniz içine.Bence bir deneyin dediğimi ve kod öğrenmeniz için.
 
Konu Sahibi
Merhaba.

If ListBox1.Selected(i) = True Then

Mantıken en basit yolu yukardakinin altına aynı döngüyü yazıp tabii listbox2 olacak listbox1 yerine ve bir if şartı ekleyebilirsiniz içine.Bence bir deneyin dediğimi ve kod öğrenmeniz için.

Refaz hocam bu döngü olaylarını anlayamadım gitti. Birçok deneme yaptım. Beceremedim diyelim. Mantığını biliyorum. Yazarken sıkıntı yaşıyorum.
 
Refaz hocam bu döngü olaylarını anlayamadım gitti. Birçok deneme yaptım. Beceremedim diyelim. Mantığını biliyorum. Yazarken sıkıntı yaşıyorum.
Mobilden yazmıştım abey alicimri hocanın kodunu görünce ikinci döngünün gereksiz olduğunu farkettim.Normalde alicimri hocanınki gibi olacak.
 
Konu Sahibi
Multiselect açık olduğu için hata alıyormuşuz. Verdiğiniz kod çalışıyor teşekkürler.
 
Konu Sahibi
Hocalarım, bu kodun Türkçe meali bu mudur?

Dim i As Integer
If ListBox2.ListCount = 0 Then - Listbox2 de veri yoksa
ListBox2.AddItem ListBox1.Value - Listbox2 ye Listbox1 de seçileni ekle
Exit Sub - Kodu bitir
End If - Şartı bitir

For i = 0 To ListBox2.ListCount - 1 - i burada listbox2 başlangıç ve en son kayıt
If ListBox2.List(i) = ListBox1.Value Then - Listbox2 listesinde döngüde Listboxtan1 de seçilen veriye rastlarsan
Exit Sub - Kodu Bitir
End If - Şartı Bitir
Next - Sonrakine bak

ListBox2.AddItem ListBox1.Value - Yukarıdaki durumlar yoksa Listbox2 ye Listbox1 deki veriyi ekle
 
Alternatif olarak döngüsüz ekteki denenebilinir.
Kod resmini ekledim.

Screenshot 2022-10-06 105934.jpg
 
Durum
Konu Çözümlendiği İçin Kapatılmıştır.
Geri
Üst