De titel is misschien niet echt duidelijk, dus ik zal zo uitgebreid mogelijk laten zien wat het probleem is.
Ik ben aan het werk met VBA onder Excel 2003.
Ik heb een formulier gemaakt met 2 knoppen, om 2 verschillende rapporten automatisch te laten maken. Het formulier is heel simpel, en is genaamd "Rapport".
De knoppen hebben de namen "btnKlant" en "btnSig" meegekregen.
De code achter het formulier ziet er als volgt uit:
De code die het formulier aanroept ziet er zo uit (heb even enkel de code gerelateerd tot het formulier en de verwerking ervan genomen):
Als ik de Sub "RapportMaken" uitvoer, komt het formulier naar voren en vraagt mij netjes welke van de 2 rapporten ik wil maken. Maar het maakt niet uit op welke knop ik klik, het formulier verdwijnt een milliseconde en verschijnt terug. Het lijkt alsof de "Me.Hide" niet wordt uitgevoerd, en het programma vastzit in een oneindige lus.
Maar nu komt het. Als ik de macro met Foutopsporing uitvoer, en stap voor stap ga tot op de "End Sub" na de "Me.Hide" in de formuliercode, en daarna op Afspelen klik, gaat alles helemaal goed!
Heeft iemand een idee waarom dit de soep in loopt?
Ik ben aan het werk met VBA onder Excel 2003.
Ik heb een formulier gemaakt met 2 knoppen, om 2 verschillende rapporten automatisch te laten maken. Het formulier is heel simpel, en is genaamd "Rapport".
De knoppen hebben de namen "btnKlant" en "btnSig" meegekregen.
De code achter het formulier ziet er als volgt uit:
Code:
Private Sub btnKlant_Click()
Me.Tag = 0
Me.Hide
End Sub
Private Sub btnSig_Click()
Me.Tag = 1
Me.Hide
End Sub
De code die het formulier aanroept ziet er zo uit (heb even enkel de code gerelateerd tot het formulier en de verwerking ervan genomen):
Code:
Sub RapportMaken()
' Userform Rapport.
Dim myForm As Rapport
Set myForm = New Rapport
' Show the custom MsgBox, asking to make report for Customer (0) or Sig (1).
myForm.Show
Select Case myForm.Tag
Case 0
' Contains code to make report for customer.
Case 1
' Contains code to make report for team Sig.
End Select
' Unload the MsgBox form.
Unload myForm
Set myForm = Nothing
End Sub
Als ik de Sub "RapportMaken" uitvoer, komt het formulier naar voren en vraagt mij netjes welke van de 2 rapporten ik wil maken. Maar het maakt niet uit op welke knop ik klik, het formulier verdwijnt een milliseconde en verschijnt terug. Het lijkt alsof de "Me.Hide" niet wordt uitgevoerd, en het programma vastzit in een oneindige lus.
Maar nu komt het. Als ik de macro met Foutopsporing uitvoer, en stap voor stap ga tot op de "End Sub" na de "Me.Hide" in de formuliercode, en daarna op Afspelen klik, gaat alles helemaal goed!
Heeft iemand een idee waarom dit de soep in loopt?
Laatst bewerkt: