16-03-2022, 01:00
merhaba arkadaşlar , listboxta bulunan itemin veya itemlerin SEÇİM YAPMADAN kolon değerini almak istiyorum, bu mümkün mü?
|
Listboxta Bulunan Itemin Veya Itemlerin Seçim Yapmadan Kolon Değerini Almak
|
|
16-03-2022, 01:00
merhaba arkadaşlar , listboxta bulunan itemin veya itemlerin SEÇİM YAPMADAN kolon değerini almak istiyorum, bu mümkün mü?
16-03-2022, 01:37
(16-03-2022, 01:00)tarkanaykın demiş ki: listboxta bulunan itemin veya itemlerin SEÇİM YAPMADAN kolon değerini almak istiyorum, bu mümkün mü? Me.listboxta.Column(kolonSirasi, ListeSirasi) 1...Ankara.......Başkent 2...Istanbul.....Büyük Şehir 3...Eskisehir.....Diyar 4...Gaziantep...Baklava Me.listboxta.Column(1, 2) = Istanbul
17-03-2022, 14:01
(En son düzenleme: 17-03-2022, 14:10 tarkanaykın.)
(16-03-2022, 01:37)dsezgin demiş ki:sayın dsezgin çok teşekkürler, şimdi benim lisbox'ta birden fazla veri olabiliyor, sırayla for i ile hepsini gezsin istiyorum ama sadece ilk öğenin değerini veriyor ama diğerleriyle işlem yapamıyorum sorunum nerede acaba, bi daha bakabilir misiniz size zahmet, teşekkürler(16-03-2022, 01:00)tarkanaykın demiş ki: listboxta bulunan itemin veya itemlerin SEÇİM YAPMADAN kolon değerini almak istiyorum, bu mümkün mü? Private Sub Komut84_Click() For i = 1 To Me.listbox1.ListCount Dim a, b As Integer Dim cm, cn As String 'cm = Me.listbox1.Column(1, i) 'a = DLookup("Kimlik", "mkys", "mkysTkl='" & cm & "'") a = Me.listbox1.Column(0, i) CurrentDb.Execute "delete mkys.* from mkys where mkys.Kimlik= " & a işte burada hata verip sonlanıyor, ilk öğeyi tablodan siliyor ama sonrakşi öğeler için hata veriyor cn = Me.listbox1.Column(4, i) b = (Nz(DLookup("Kimlik", "nucleus", "nucleusMkodu='" & cn & "'"), 0)) DoCmd.RunSQL "delete nucleus.* from nucleus where nucleus.Kimlik=" & b DoCmd.OpenQuery "sorguMkysNucleusOrtakListbox Kopyası silme" Me.listbox1.Requery Next DoCmd.RunSQL "delete * from mkys where mkys.Kimlik=" & Me.mkysKimlik DoCmd.RunSQL "delete * from nucleus where nucleus.Kimlik " & Me.nucleusKimlik Me.RecordSource = "SELECT mkys.[Kimlik], mkys.[mkysTkl], mkys.[mkysMadi], mkys.[mkysDepo], nucleus.[Kimlik], nucleus.[nucleusMkodu], nucleus.[nucleusMadi], nucleus.[nucleusTklHesapKodu] FROM mkys INNER JOIN nucleus ON mkys.[mkysTkl] = nucleus.[nucleusTklHesapKodu] WHERE (((([mkys].[mkysTkl] &[mkys].[mkysMadi] & [mkys].[mkysDepo] & [nucleus].[nucleusMkodu] & [nucleus].[nucleusMadi] & [nucleus].[nucleusTklHesapKodu])) Not In (SELECT [sonTablo].[mkysTkl] & [sonTablo].[mkysMadi] & [sonTablo].[mkysDepo] & [sonTablo].[nucleusMkodu] & [sonTablo].[nucleusMadi] & [sonTablo].[nucleusTklHesapKodu ] FROM sonTablo)))" Me.Requery MsgBox "liste kayıtları silindi" End Sub
17-03-2022, 17:16
Liste kutusu for ... next döngü içinde kayıt okuma halinde tablodan kayıt silinmesi liste kutusu sıralamasını bozuyor ve i sayacı değer kaybediyor. ilk kayıt silinme sonrası liste kutusu sıralaması önceki kaydın silinmesi ile bir sonraki liste ındex'i değişime uğruyor. Liste silinecek kimlik numaralarını değişkende biriktirip, IN(... ile silinebilir.
Silinecek kayıt sayısı çok olursa yöntemi tabloya kınlık numaralarını kaydedip, silme sorgusu ile yapılabilir. Visual Basic |