Microsoft 365 Arret macro si condition est fausse

Chounoé

XLDnaute Nouveau
Bonjour j'aimerai pouvoir ne pas continuer ma macro si par exemple elle trouve une erreur lors de la vérification d'une données d'une requête. Merci. Ci-joint ma macro

If Not Application.Dialogs(xlDialogOpen).Show("R:\*rmp02*.*") Then End

'Recherche bonne requête

If Range("A5").Value Like "TR.HA-*" Then 'SI CONDITION VRAIE

Application.ScreenUpdating = False
Cells.Select
Selection.Copy
'ActiveWorkbook.Close

Windows("Suivi kilométrique et entretien des trains MP73 MP89 Ligne 6 - Copie.xlsm").Activate
Sheets("rmp02 MP73").Visible = True
Sheets("rmp02 MP73").Select
Cells.Select
ActiveSheet.Paste

Sheets("rmp02 MP73").Select
ActiveWindow.SelectedSheets.Visible = False


Else 'SI CONDITION FAUSSE
'Boîte de dialogue : avertissement
MsgBox "Vérifier la requête selectionnée" & Chr(10) & " OU" & Chr(10) & " La saisie dans la GMAO", vbCritical, "ERREUR"
Call Fermeture.Fermeture

* C'EST ICI QUE JE VOUDRAIS QUE MA MACRO S'ARRETE SI ELLE TROUVE UNE ERREUR ET DE NE PAS CONTINUER


If Not Application.Dialogs(xlDialogOpen).Show("R:\*rmp02*.*") Then End
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour Chounoé,
S'il s'agit une erreur détectée par le VBA et que c'est une erreur "normale" alors vous pouvez, juste après SUB faire un On goto Error :
1680015144926.png

Mais attention, il sortira même s'il s'agit d'une erreur autre que celle attendue. ( d'où erreur "normale" :) )
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Re,
Ma méthode marche évidemment que s'il s'agit d'une erreur détectée par le VBA.
Dans votre cas je pense qu'il ne s'agit pas d'une erreur mais d'un message d'alerte et dans ce cas On error goto ne sert à rien.
Call Fermeture.Fermeture

* C'EST ICI QUE JE VOUDRAIS QUE MA MACRO S'ARRETE SI ELLE TROUVE UNE ERREUR ET DE NE PAS CONTINUER
L'erreur est en sortie de la macro Fermeture ?
Auriez vous le message d'erreur qui est remontée ?
 

Discussions similaires

Statistiques des forums

Discussions
314 717
Messages
2 112 168
Membres
111 448
dernier inscrit
ayment