frmPersonelListesi diye bir formum var ve bu formdaki kaydın olduğu listbox da çift tıklandığında, tıklanan satırdaki bilgilerin frmPersoneKayıt üzerine alınması için kodları yazdım. Fakat işleyiş de şöyle bir sorun oluşuyor bunu çözemedim. İlk tıklamada frmPersoneKayıt formu boş geliyor ekrana, bu formu kapattığımda bir hata mesajı veriyor. Hata mesajını kapatıp tekrar kaydın üzerinde çift tıkladığımda bu sefer form ilgili kaydın verileri ile yükleniyor. 2.Senaryoda da Hata mesajından sonra 2.kez çift tıklama yapmıyorum ve frmPersonelListesini kapatıyorum akabinde frmPersonelKayit formunu açtığımda ne alaka ise Açılan form boş bir şekilde kayda hazır halde gelmesi gerekirken, tıklanan kaydın verileri ile dolu bir şekilde ekrana geliyor. @
berduş hocam bu durum bir önce açtığım konuda ki Listboxa verilerin gelmemesi ile ilgili sizin ve benim bulduğum çözümlerin her ikisinde de oluşuyor. İki dosyada da denedim.
İlgili veritabanının dosyasını da paylaştım...
veriler zaten listboxta varken diğer forma aktarmak için tekrar recordset ile çağırmaya gerek var mı?
frmPersonelListesi formundaki
lstPersonel liste kutusunun çift tıklama olayını aşağıdaki gibi
Private Sub lstPersonel_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
If lstPersonel.ListIndex = -1 Then Exit Sub
If lstPersonel.ListIndex = -1 Then Exit Sub
Dim secilenID As Long
secilenID = CLng(lstPersonel.List(lstPersonel.ListIndex, 0))
frmPersonelKayit.Show vbModal
End Sub
frmPersonelKayit formunun
UserForm_Initialize olayını aşağıdaki gibi
Private Sub UserForm_Initialize()
Call BaglantiKur
' cmbCinsiyet adlı ComboBox'a değerleri ekle
With Me.cmbCinsiyet
.AddItem "Erkek"
.AddItem "Kadın"
.ListIndex = 1 ' İsteğe bağlı: İlk değeri seçili hale getirir (Erkek)
End With
With Me.cmbMedeniDurum
.AddItem "Evli"
.AddItem "Bekar"
.ListIndex = 0
End With
With Me.cmbDepartman
.AddItem "Yönetim"
.AddItem "Kreş"
.AddItem "Muhasebe"
.AddItem "Mutfak"
.AddItem "Ofis"
End With
With Me.cmbGorevi
.AddItem "Vakıf Başkanı"
.AddItem "Genel Müdür"
.AddItem "Genel Müdür Yrd."
.AddItem "Muhasebe Müdürü"
.AddItem "Muhasebe Elemanı"
.AddItem "Mutfak Görevlisi"
.AddItem "Öğretmen"
.AddItem "Sınıf Annesi"
.AddItem "Temizlik Görevlisi"
End With
KayitID = CLng(frmPersonelListesi.lstPersonel.List(frmPersonelListesi.lstPersonel.ListIndex, 0))
If KayitID > 0 Then
Call KayıtYukle(KayitID)
End If
End Sub
düzenleyip dener misiniz?
@
berduş hocam resimdeki hatayı veriyor. ( her 2 dosyada da hata veriyor. Biri sizin düzenlediğiniz listboxda verileri GetRows metodu ile getirdiğiniz dosya diğeride benim nette bulduğum yöntemle oluşturduğum dosya)
dosyanızın son halini ekler misiniz?