Sadece Seçilen Malzemeyi Sildirme

1 2
11/09/2019, 10:00

untouchable

Merhabalar,

Kod:
Private Sub Komut13_Click()
If MsgBox("" & Me.lstMalzeme.Column(2) & "  Malzemesini Listeden Çıkarmak İstediğinize Emin Misiniz ?", vbCritical + vbYesNo, "VEDAŞ Bakım Onarım") = vbYes Then
DoCmd.SetWarnings False
DoCmd.RunSQL ("DELETE no, malzeme_kodu, malzeme_adi, malzeme_birimi, fiili_stok, kullanılan_miktar, is_emri_detayi FROM kullanici_girisi WHERE (((malzeme_adi)= Eval('[Forms]![malzeme_giris]![lstMalzeme].Column(2)')));")
DoCmd.SetWarnings True
Me.lstMalzeme.Requery
Else
Exit Sub
End If
End Sub

Liste kutusuna eklediğim malzemeyi silmek için yukarıdaki kodu kullanıyorum fakat silme işlemi için seçtiğim malzeme tabloda kaçtane varsa siliniyor ben sadece seçilenin silinmesini istiyorum yardımcı olabilir misiniz ?
11/09/2019, 10:50

berduş

benzersiz ID alanı var mı liste kutusunda, hangi sütunda? Ayrıca "delete " kullanırken tek tek alan yazmanıza gerek yok
"delete from ….."  yeterli
11/09/2019, 13:40

untouchable

Hocam benzersiz alan kimlik kısmı var sadece
11/09/2019, 13:42

berduş

o zaman liste kutusuna kimlik alanını da ekleyip silme işlemini ona göre yapmayı deneyebilirsiniz?
11/09/2019, 13:47

untouchable

Hocam Column(2) haricinde değiştirince silme yapmıyor kimlik kısmını Column(0) ekledim ve kodda o şekilde düzelttim fakat silmiyor
11/09/2019, 13:54

berduş

"kullanıcı_girisi" tablosundaki malzemeyi tanımlayan alanın "Kimlik" alanı olduğu ve liste kutusunda ilk sütunda yer aldığı varsayılmıştır
dilerim işinize yarar
Kod:
Private Sub Komut13_Click()
If MsgBox("" & Me.lstMalzeme.Column(2) & "  Malzemesini Listeden Çıkarmak İstediğinize Emin Misiniz ?", vbCritical + vbYesNo, "VEDAŞ Bakım Onarım") = vbYes Then
DoCmd.SetWarnings False
DoCmd.RunSQL "DELETE  FROM kullanici_girisi WHERE  [Kimlik]=" & me.lstMalzeme.column(0)
DoCmd.SetWarnings True
Me.lstMalzeme.Requery
Else
Exit Sub
End If
End Sub
1 2