Hejsan...! Skicka med objekten du adresserar från formuläret som argumen.<br>Moduler
Hur gör jag för att man ska slippa skriva så här när koden ligger i en modul:
Form1.blabla.blabla=nånting
Alltså med formnamnet framför på allt.
Går det eller? Vad ska man egentligen använa moduler till?
Nu blir det mer cola // R-musSv: Moduler
<br>
Låt oss ta en subrutin för att ladda en combobox:
<code>
Public Sub LoadCombo(Combo As ComboBox, Recordset As ADODB.Recordset, TextField As ADODB.Field, Optional DataField As ADODB.Field, Optional Default As Variant)
If DataField Is Nothing Then
If Not IsMissing(Default) Then
Do Until Recordset.EOF
Combo.AddItem "" & TextField.Value
If TextField.Value = Default Then
Combo.ListIndex = Combo.NewIndex
Recordset.MoveNext
Exit Do
End If
Recordset.MoveNext
Loop
End If
Do Until Recordset.EOF
Combo.AddItem "" & TextField.Value
Recordset.MoveNext
Loop
Else
If Not IsMissing(Default) Then
Do Until Recordset.EOF
Combo.AddItem "" & TextField.Value
Combo.ItemData(Combo.NewIndex) = DataField.Value
If DataField.Value = Default Then
Combo.ListIndex = Combo.NewIndex
Recordset.MoveNext
Exit Do
End If
Recordset.MoveNext
Loop
End If
Do Until Recordset.EOF
Combo.AddItem "" & TextField.Value
Combo.ItemData(Combo.NewIndex) = DataField.Value
Recordset.MoveNext
Loop
End If
End Sub
</code>
Istället för att skriva en do loop för varje gång du ska llada en combobox. Inkuderar du bara funktionen till en modul och kan använda den varifrån som helst i ditt projekt.