macro's gebruiken in VBA, Access 2007

Status
Niet open voor verdere reacties.

janbe63

Gebruiker
Lid geworden
21 okt 2007
Berichten
64
Beste,

Ik heb het volgende gedaan.
Een tabel gemaakt
Een Query gemaakt (dat een aantal velden gebruikt, en 1 selectiecriterium)
Een rapport van de query
Een macro dat het rapport aanroept
Hierna heb ik een formulier gemaakt met 1 knop die macro1 aanroept

Vervolgens heb ik macro1 omgezet m.b.v. Macro's converteren naar VBA.

Als ik nu de macro "run" vanaf het formulier gaat het goed.

Als ik nu de data verander in de tabel en het rapport staat open dan gaat het niet goed, sluit ik het rapport en ik run de macro dan krijg ik een goed nieuw rapport.

Ik zou graag de code in VBA gebruiken om als de macro aangeroepen wordt en het rapport staat open om hem eerst te sluiten en daarna het rapport te tonen.

Echter als ik nu de code in VBA verander (wat dan ook) dan blijft hij de gewone macro gebruiken.

Wie helpt mij bij dit beginners probleem in het gebruik van Access met VBA

Alvast dank

Jan

Bijgevoegd de database.
 

Bijlagen

Ik heb geen access 2007, maar kan je wel het volgende vertellen.
Als je een macro omzet naar VBA code dan wordt er een module aangemaakt.
In die module wordt VBA code geplaatst in een sub of een functie.
Deze code kun je uitvoeren door de sub of de functie uit te voeren.

Als je op een formulier een knop zet die een macro aanroept, dan blijft deze knop tot in alle eeuwigheid die macro aanroepen.
Als je wilt dat die knop iets anders gaat aanroepen zul je dus wat moeten doen.
Het makkelijkst is om je knop te verwijderen en gewoon een nieuwe aan te maken die de sub of de functie in de module aanroept.
De originele macro zou ik gewoon weg gooien, dan kun je hem ook niet meer onbedoeld aanroepen.
 
Beste,

Bedankt zover.
Het lukt me nu om een "nieuwe" macro te gebruiken (of eigenlijk een functie).

Nu ben ik nog op zoek maar de VBA code voor

If {rapport query1 = open} then {rapport query1 = close}

Zodat het rapport gesloten wordt en hij de nieuwe gegevens in het nieuwe rapport plaatst.

Jan
 
DoCmd.Close acReport, "JouwRapportNaam", acSavePrompt
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan