Primer koji si postavio, dao si bez ikakvih komentara pa sam neke stvari prevideo.
Petlja u događaju ComboBox1_Change koja je prolazila red po red iz baze da bi popunila podatke iz forme i pored sve neefikasnosti imala je pozitivan sporedni efekat - da se završila na kraju liste, gde je red sa "praznim" vrednositima.
U ovoj verziji koda koju sam ja postavio klik na
Promena podataka postavlja na kraju
Code:
ComboBox1.Value = ""
Što poziva događaj ComboBox1_Change, a ComboBox1.ListIndex u tom slučaju je -1, pa se onda se u formu ubace podaci iz 1 reda (zaglavlja)
Jedno rešenje je da se pozicioniraš na prvi prazan red, ali po meni čistije je da imaš posebno "čišćenje" forme u tom slučaju
Code:
Private Sub ComboBox1_Change()
Dim Rw As Range
If ComboBox1.ListIndex > 0 Then
' Na događaj Change uzima se ListIndex i postavlja odgovarajući red u Rw
Set Rw = Range(ComboBox1.RowSource).Rows(ComboBox1.ListIndex + 1)
txt_prezime.Value = Rw.Next
txt_imeroditelja.Value = Rw.Next(1, 2)
txt_ime.Value = Rw.Next(1, 3)
txt_jmbg.Value = Rw.Next(1, 4)
Textbrojlegitimacije.Value = Rw.Next(1, 5)
txt_klub.Value = Rw.Next(1, 6)
txt_igractrener.Value = Rw.Next(1, 7)
txt_rnbroj.Value = Rw.Next(1, 8)
Else ' izprazni formu
txt_prezime.Value = ""
txt_imeroditelja.Value = ""
txt_ime.Value = ""
txt_jmbg.Value = ""
Textbrojlegitimacije.Value = ""
txt_klub.Value = ""
txt_igractrener.Value = ""
txt_rnbroj.Value = ""
End If
End Sub
Zbog konzistentnosti izbacio sam petlju i iz rutine AddData_Click
Nije to loše Rembrante, samo što ne bi dodao još malo boje?