Goedenavond,
Ik heb een vraag over tijdelijk stoppen van VBA uitvoering zolang een formulier open is.
Het gewenste gedrag:
1) Er loopt een import procedure;
2) Na de import procedure wordt (indien van toepassing) formulier1 geopend met de records die niet zijn geïmporteerd. (omdat ze niet aan bepaalde voorwaarden voldoen) ;
3) Na het sluiten van formulier 1 wordt formulier 2 geopend. ( weergave van de geïmporteerde records)
4 Indien alle records zijn geïmporteerd worden stap 2+3 overgeslagen en zal formulier 2 direct worden geopend.
In stap 3 ligt mijn uitdaging.
Ik had gehoopt dat dit op te lossen was door het formulier modaal en pop-up te maken, maar dit werkt helaas niet.
Ik wil dit niet met een timer oplossen, maar puur op basis van de interactie met de gebruiker, wanneer formulier 1 gesloten is.
Op het WWW heb ik diverse mogelijkheden gevonden, de meest logische (naar mijn inzicht) is:
Samenvatting van de code:
Het probleem hier is echter dat Access vastloopt als ik deze code laat lopen terwijl het in debug mode prima werkt.
Heeft iemand een idee hoe dit het beste aangepakt kan worden?
Groeten,
Danny
Ik heb een vraag over tijdelijk stoppen van VBA uitvoering zolang een formulier open is.
Het gewenste gedrag:
1) Er loopt een import procedure;
2) Na de import procedure wordt (indien van toepassing) formulier1 geopend met de records die niet zijn geïmporteerd. (omdat ze niet aan bepaalde voorwaarden voldoen) ;
3) Na het sluiten van formulier 1 wordt formulier 2 geopend. ( weergave van de geïmporteerde records)
4 Indien alle records zijn geïmporteerd worden stap 2+3 overgeslagen en zal formulier 2 direct worden geopend.
In stap 3 ligt mijn uitdaging.
Ik had gehoopt dat dit op te lossen was door het formulier modaal en pop-up te maken, maar dit werkt helaas niet.
Ik wil dit niet met een timer oplossen, maar puur op basis van de interactie met de gebruiker, wanneer formulier 1 gesloten is.
Op het WWW heb ik diverse mogelijkheden gevonden, de meest logische (naar mijn inzicht) is:
Samenvatting van de code:
Code:
DoCmd.OpenForm "formulier 1", acFormDS, , , acFormReadOnly, acDialog
Dim oAccessObject As AccessObject
Dim IsLoad As Boolean
Dim cFormName As String
cFormName = "frmDuplicateRecords"
Do
Set oAccessObject = CurrentProject.AllForms(cFormName)
If oAccessObject.IsLoaded Then
If oAccessObject.CurrentView <> acCurViewDesign Then
IsLoaded = True
End If
End If
Loop While IsLoaded = True
DoCmd.OpenForm "formulier 2", acFormDS, , , acFormEdit, acWindowNormal
Het probleem hier is echter dat Access vastloopt als ik deze code laat lopen terwijl het in debug mode prima werkt.
Heeft iemand een idee hoe dit het beste aangepakt kan worden?
Groeten,
Danny