| | |
Formulieren openen
Deze functie gebruik ik in combinatie met de elders beschreven OpenPopUpFormulier. De functie controleert eerst of het gevraagde formulier niet al geoped is (en zo ja, sluit deze) en opent vervolgens het formulier. Mocht de naam van het formulier niet bestaan, dan wordt hiervan een melding gegeven.
Public Sub OpenFormulier(FrmNaam As String) On Error GoTo err_OpenFormulier Call SluitFormulierIndienOpen(FrmNaam)
DoCmd.OpenForm FrmNaam Exit Sub err_OpenFormulier: ToonMsg ("Het formulier bestaat niet of wordt onjuist aangeroepen") Exit Sub End Sub
Public Sub SluitFormulierIndienOpen(FrmNaam As String)
Dim i, i2 As Long
i2 = Application.Forms.Count For i = 0 To (i2 - 1) If Forms(i).Name = FrmNaam Then DoCmd.Close acForm, Forms(i).Name Next
End Sub
Reageer op deze tip
Er zijn 2 reacties
Hub Salden (16-2-2011)
Ik ben nog een beginner met Access. Mijn vraag is, hoe wordt deze functie aangeroepen??
alvast bedankt
Beheerder (16-2-2011)
Hoi Hub,
Deze functies plaats ik in een 'Module' (die vind je in het lijstje Tabellen, Queries, Formulieren, Macro's, Modules) door hier een nieuwe aan toe te voegen en de code daar in te plakken.
Bij 'opslaan' moet je de module ook nog een naam geven - die naam kun je zelf bepalen.
Wanneer je dan bij 'Formulieren' een formulier maakt of wijzigt, kun je op een knop waarmee je een ander formulier wilt openen kiezen voor rechtermuisknop, Gebeurtenis opbouwen, programmacode
Je komt dan in de procedure die zal worden uitgevoerd als iemand op die knop klikt. Hier kun je dan deze functie aanroepen. Stel dat het formulier dat je wilt openen 'Studenten' heet:
Call OpenFormulier("Studenten")
Overigens kun je ook gebruik maken van de functie uit Access zelf: Docmd.OpenForm "Studenten"
Zelf vind ik het alleen wel makkelijk mijn eigen te gebruiken, omdat: - deze ook controleert of het formulier niet al openstaat en zo ja deze dan eerst sluit - het makkelijk leesbaar is en snel in te typen ('Openf' en dan CTRL-TAB) - het makkelijker aan te passen is mocht je besluiten al je formulieren op een net iets andere manier te openen. Stel je wilt bijvoorbeeld gaan loggen welke formulieren worden geopend (ik weet het.. vreemd voorbeeld), dan hoef je alleen maar de OpenFormulier uit te breiden hiermee en hoef je niet al je knopjes langs om daar code aan toe te voegen
Reageer op deze tip
De volgende tips zijn beschikbaar:
Comprimeren (handmatig)
Gegevens converteren: Controleren of iets een Decimal is
Gegevens converteren: Controleren of iets een Integer is
Gegevens converteren: Null-waardes afvangen
Melden dat een onderdeel nog niet gereed is
Onderdelen van je pakket afschermen met een wachtwoord
| |
|