2 vraagjes:
1: Ik wil in een combobox nummers weergeven van 0 t/m 999.
Normaal zou je met een een "For i = 0 to 999" en een "combo.additem i" volstaan, maar de values moeten bestaan uit 3 karakters, en daar waar ze minder zijn moeten ze opgevuld worden met nullen, m.a.w.: 3 moet 003 worden, 50 moet 050 worden:
Ik vroeg me gewoon af of ik dit ook op een snellere manier voorelkaar kan krijgen?
2: De nummers in de combobox moeten nu ook vergeleken worden met bestaande values die in een database zitten.
Daar waar de nummers gelijk aan elkaar zijn, moeten gewist worden uit de combobox.
Ik heb de volgende code:
Nu heb ik bovenstaande code allemaal in het form_load event van een venster staan en duurt het bij mij redelijk lang voordat dit scherm opgebouwd is.
Bestaat er misschien een mogelijkheid wat efficiëntere code te implementeren?
Bvd
1: Ik wil in een combobox nummers weergeven van 0 t/m 999.
Normaal zou je met een een "For i = 0 to 999" en een "combo.additem i" volstaan, maar de values moeten bestaan uit 3 karakters, en daar waar ze minder zijn moeten ze opgevuld worden met nullen, m.a.w.: 3 moet 003 worden, 50 moet 050 worden:
Visual Basic:
1
2
3
4
5
6
7
8
9
| For i = 0 To 999 If Len(i) = 1 Then Combo1.AddItem "00" & i ElseIf Len(i) = 2 Then Combo1.AddItem "0" & i Else Combo1.AddItem i End If Next i |
Ik vroeg me gewoon af of ik dit ook op een snellere manier voorelkaar kan krijgen?
2: De nummers in de combobox moeten nu ook vergeleken worden met bestaande values die in een database zitten.
Daar waar de nummers gelijk aan elkaar zijn, moeten gewist worden uit de combobox.
Ik heb de volgende code:
Visual Basic:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
| ' compare rs and combobox values strSQL2 = "SELECT Nummer FROM Lijst WHERE OwnerId = " & Loginscreen.Id Set rs1 = db.OpenRecordset(strSQL2) If rs1.BOF = False And rs1.EOF = False Then rs1.MoveFirst Do While Not rs1.EOF For intTemp = 0 To Combo1.ListCount - 1 If Combo1.List(intTemp) = rs1!Nummer Then Combo1.RemoveItem (intTemp) End If Next intTemp rs1.MoveNext Loop End If Combo1.ListIndex = 0 End Sub |
Nu heb ik bovenstaande code allemaal in het form_load event van een venster staan en duurt het bij mij redelijk lang voordat dit scherm opgebouwd is.
Bestaat er misschien een mogelijkheid wat efficiëntere code te implementeren?
Bvd