ListBox'tan seçilen veriyi silme

Katılım
1 Mayıs 2018
Mesajlar
4
Excel Vers. ve Dili
office 365 proplus
Excel sayfamda ürün veri listem var bu listeyi listbox'a aktardım. Listbox'tan seçtiğim ürünleri excel sayfamdan silmek istiyorum ancak kodunu yazamadım. Şuan sürekli ilk satırımdaki ürün silinmekte farklı ürünleri seçsem de hep ilk satırda hangi ürün varsa o siliniyor. Listbox'tan seçtiğim ürünü silmeme yardımcı olursanız sevinirim.
 

cems

Altın Üye
Katılım
2 Eylül 2005
Mesajlar
2,260
Excel Vers. ve Dili
office 2003 tr + office 2010 tr 32bit
Nereden neyi silmek istediğinize, ayrıca sayfa üzerinde mi form üzerinde mi çalıştığınıza dair bir örnek eklerseniz iyi olur.
 
Katılım
1 Mayıs 2018
Mesajlar
4
Excel Vers. ve Dili
office 365 proplus
Nereden neyi silmek istediğinize, ayrıca sayfa üzerinde mi form üzerinde mi çalıştığınıza dair bir örnek eklerseniz iyi olur.
Listboxta yer alan hammaddeyi seçip hammadde adlı sayfadan seçtiğim hammadde satırını silmek istiyorum.
Teşekkürler.
 

Ekli dosyalar

cems

Altın Üye
Katılım
2 Eylül 2005
Mesajlar
2,260
Excel Vers. ve Dili
office 2003 tr + office 2010 tr 32bit
Dosyanızda listbox1 e veriyi nasıl yüklediğinize dair bir yöntem göremedim. Bildiğim kadarı ile listbox sayfada olan verinin bir ayna yansımasıdır yani pasif bir gereçtir. Ayrıca listboxta gereksiz ayarlar da var, solunda işaretleme kutusu ve çoklu satır seçme özelliği tam dosyada işe yarar mı bilmiyorum ama bu dosyada sorun çıkarıyor.

Sil tuşunun çalışması için önce bul tuşu olması ve silinecek veriyi bundan sonra işaretleyip silmek gerekir.

Bu hali ile


Kod:
Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Selection.EntireRow.Delete
End Sub
ile listboxtan satır siliniyor ama , sayfada silmiyor, zira sayfadan kopuk bir listbox var.

Bunu kendi dosyanızda bir deneyin, satıra çift tıklayınca her iki ortamda silmesi gerçekleşebilir, emin değilim.
 
Katılım
1 Mayıs 2018
Mesajlar
4
Excel Vers. ve Dili
office 365 proplus
Dosyanızda listbox1 e veriyi nasıl yüklediğinize dair bir yöntem göremedim. Bildiğim kadarı ile listbox sayfada olan verinin bir ayna yansımasıdır yani pasif bir gereçtir. Ayrıca listboxta gereksiz ayarlar da var, solunda işaretleme kutusu ve çoklu satır seçme özelliği tam dosyada işe yarar mı bilmiyorum ama bu dosyada sorun çıkarıyor.

Sil tuşunun çalışması için önce bul tuşu olması ve silinecek veriyi bundan sonra işaretleyip silmek gerekir.

Bu hali ile


Kod:
Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Selection.EntireRow.Delete
End Sub
ile listboxtan satır siliniyor ama , sayfada silmiyor, zira sayfadan kopuk bir listbox var.

Bunu kendi dosyanızda bir deneyin, satıra çift tıklayınca her iki ortamda silmesi gerçekleşebilir, emin değilim.
teşekkür ederim, bul tuşu ile tekrar deneyeceğim
 

ÖmerBey

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2012
Mesajlar
4,086
Excel Vers. ve Dili
2007 Türkçe
Listboxta yer alan hammaddeyi seçip hammadde adlı sayfadan seçtiğim hammadde satırını silmek istiyorum.
Merhaba,
Bul tuşuna ihtiyaç yok. Mevcut dosyanız içn aşağıdaki kodu deneyiniz.
PHP:
Private Sub hammadde_cikar_Click()
For a = 0 To ListBox1.ListCount - 1
    If ListBox1.Selected(a) Then
        ara = ListBox1.List(a, 0)
        Sheets("Hammadde").Range("A:A").Find(what:=ara, lookat:=xlWhole).EntireRow.Delete
    End If
Next
End Sub
 
Son düzenleme:
Katılım
1 Mayıs 2018
Mesajlar
4
Excel Vers. ve Dili
office 365 proplus
Merhaba,
Bul tuşuna ihtiyaç yok. Mevcut dosyanız içn aşağıdaki kodu deneyiniz.
PHP:
Private Sub hammadde_cikar_Click()
For a = 0 To ListBox1.ListCount - 1
    If ListBox1.Selected(a) Then
        ara = ListBox1.List(a, 0)
        Sheets("Hammadde").Range("A:A").Find(what:=ara, lookat:=xlWhole).EntireRow.Delete
    End If
Next
End Sub
çok teşekkür ederim bu şekilde istediğim gibi çalıştı. emeğinize sağlık
 

ÖmerBey

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2012
Mesajlar
4,086
Excel Vers. ve Dili
2007 Türkçe
secili olan birden fazla satır var ise nasıl sildirebiliriz
Merhaba,
Deneyiniz...
Kod:
Private Sub hammadde_cikar_Click()
Dim sil As Range, a As Integer
Set sil = Sheets("Hammadde").Range("A" & Rows.Count)

For a = 0 To ListBox1.ListCount - 1
    If ListBox1.Selected(a) Then
        ara = ListBox1.List(a, 0)
        Set sil = Union(sil, Sheets("Hammadde").Range("A:A").Find(what:=ara, lookat:=xlWhole))
    End If
Next
sil.EntireRow.Delete
End Sub
 
Son düzenleme:

ÖmerBey

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2012
Mesajlar
4,086
Excel Vers. ve Dili
2007 Türkçe
Allah hepimizden razı olsun,
İyi çalışmalar...
 
Üst