Tips over Microsoft Word vind je op Werken met Word
TIPS

DATABASES

QUERIES

FORMULIEREN

RAPPORTEN

MODULES

FORUM

CONTACT



ZOEKEN
 

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