Tempvars voorbeelden en zo meer info als je bv googled en via
https://docs.microsoft.com/en-us/office/vba/api/access.tempvars
Maar ik denk uit je voorbeeld dat je toch eens goed moet nalezen dat je ergens in je DB op een bepaald moment
eerst de waarde Varvest moet in het geheugen laden van je PC als een Tempvars door het "add" commando en pas dan kan je die waarde uitlezen.
Ik zou dus die vestiging inladen bij het inloggen in uw database (kan daar bv gebeuren in keuzelijst, of een Dlookup), toevoegen via het tempvars.add commando aan de collectie en dan uitlezen in uw formulier.
Tip: Ik gebruik voor het aanmaken van die tempvars waarden meestal de gewone naam van het veld met daarvoor nog eens een paar letters (die mag je zelf kiezen), kwestie van duidelijk onderscheid te maken over welke waarde het gaat (jij koos voor VAR) en ik zet de meeste gebruikte tempvars zaken in een apart Txt bestandje zodat ik die maar te kopïeren en te plakken heb in mijn VBA codes. Ik gebruik ook steeds Option Explicit in de VBA code maar de Tempvars zelf moet je niet declareren.
Voorbeeldje voor U als je bv een keuzelijst zou gebruiken bij het inloggen in je DB om je vestiging te kiezen dan zet je in de afterupdate iets in de zin van
Code:
TempVars.add "VarVest", Me.KzlVestiging.Value
Staat je ID van de vestiging in kolom twee van de keuzelijst gebruik dan
Code:
TempVars.add "VarVest", Me.KzlVestiging.Column(1).Value
Je verschillende vestigingen zijn waarschijnlijk wel ergens opgeslagen in een tabel denk ik en je standaard vestiging vink je dan waarschijnlijk ook wel ergens aan? Ik zeg dat maar omdat je dan bv in je inlogscherm bij het openen ervan de vesting kunt inladen via een DLookup en je niet steeds de keuzelijst moet gebruiken. Dat doe je dan bv zo
Code:
Dim currInst As Integer
'Vestigingsnummer opzoeken voor de vestiging
currInst = Nz(DLookup("Vestiging", "Tbl_Vestigingen", "IHuidig=True"), "")
TempVars.add "VarVest", currInst
'of dezelfde code in één regel
' TempVars.add "VarVest", Nz(DLookup("Vestiging", "Tbl_Vestigingen", "IHuidig=True"), "")
Voor het uitlezen van die Varvest in je formulier doe je dat dan gewoon zo in je VBA code bij openen
Code:
Me.tst = [TempVars]![Varvest ]
Bestaande Temvars waarden worden overschreven als je er een nieuwe waarde aan toekent, je kunt die dus heel vlot laten veranderen.
Je kunt tot 255 van die waarden tegelijk in je geheugen laden en ze worden verwijderd als je de DB sluit, maar je hebt ook het remove commando daar voor. Maar dat lees je wel na op internet.