MS Access TempVars collectie
De TempVars collectie, ingevoerd met Access 2007 en bovendien enkel beschikbaar in de VBA omgeving van Access, biedt de mogelijkheid informatie te delen doorheen de betrokken Access toepassing. Men kan de vergelijking maken met globale variabelen maar het concept is veel handiger en stabieler. Zelfs indien de code onverwacht stopt wegens fouten behoudt de TempVars collectie zijn waarden. Bovendien kan er overal beroep worden opgedaan, in Formulieren, Rapporten, Queries en natuurlijk ook in Code. Men dient enkel de collectie te initialiseren bij het opstarten van de toepassing.Alle informatie wordt automatisch geblankt wanneer de toepassing afgesloten wordt.
Met de Add methode worden variabelen toegevoegd :
TempVars.Add Naam,Waarde
Bijvoorbeeld in de Open gebeurtenis van het start formulier van de toepassing han men volgende code voorzien :
TempVars.Add "lngIDAdmin", 169870654
TempVars.Add "strEenForm", "frmTest"
TempVars.Add "blnIets", -1
Vervolgens kan men een waarde als volgt opvragen
TempVars!lngIDAmin
TempVars.Item("lngIDAdmin")
TempVars.Item(1)
zal in al de drie gevallen 169870654 weergeven.
Nog een voorbeeld :
Private Sub cmdTempVars_Click()
Dim intI As Integer
For intI = 0 To TempVars.Count - 1
Debug.Print TempVars(intI).Name & " | " & TempVars(intI).Value
Next intI
'hiermee wordt bij wijze van voorbeeld het formulier frmTest geopend.
DoCmd.OpenForm TempVars!strStartForm
End Sub
Voor gebruik in een Query :[TempVars]![lngIDAdmin]
SELECT CustomerID, LastName, FirstName, Address,City, State
FROM tblCustomers1
WHERE (((CustomerID)=[TempVars]![lngIDAdmin]));