Probleme de fermeture classeur sous vba
Résolu/Fermé
thivame
Messages postés
60
Date d'inscription
vendredi 9 avril 2004
Statut
Membre
Dernière intervention
2 janvier 2023
-
Modifié par thivame le 26/10/2014 à 08:52
t - 8 nov. 2014 à 20:40
t - 8 nov. 2014 à 20:40
A voir également:
- Probleme de fermeture classeur sous vba
- Sytadin fermeture - Télécharger - Transports & Cartes
- Forcer la fermeture d'un programme - Guide
- Frais de fermeture compte paypal - Guide
- Annuler fermeture onglet chrome - Guide
- Vba dépassement de capacité ✓ - Forum Excel
4 réponses
thivame
Messages postés
60
Date d'inscription
vendredi 9 avril 2004
Statut
Membre
Dernière intervention
2 janvier 2023
4
26 oct. 2014 à 21:47
26 oct. 2014 à 21:47
la patience paye... finalement j'ai trouvé j'ai créé un module avec 4 sub de sortie (en public) et dans mon bouton de mon userform pour chaque situation (donc 4) je l'envoie vers le sub correspondant
ce qui donne pour ceux que ca peut aider
Public CancelSortie As Boolean
Sub LaSortie()
Application.DisplayFullScreen = False
CancelSortie = False
ThisWorkbook.Close True
End Sub
Sub LaSortie2()
Application.DisplayFullScreen = False
CancelSortie = False
ThisWorkbook.Save
Application.Quit
End Sub
Sub LaSortie3()
Application.DisplayFullScreen = False
CancelSortie = False
ThisWorkbook.Close False
End Sub
Sub LaSortie4()
Application.DisplayFullScreen = False
CancelSortie = False
Application.Quit
End Sub
j'ai essayer 6 fois chaque sortie et elles ont fonctionnées 6 fois.. ca faisait un bout que je cherchais et c'etait le public que j'avais zappé...
Merci quand meme a vous
cordialement
ce qui donne pour ceux que ca peut aider
Public CancelSortie As Boolean
Sub LaSortie()
Application.DisplayFullScreen = False
CancelSortie = False
ThisWorkbook.Close True
End Sub
Sub LaSortie2()
Application.DisplayFullScreen = False
CancelSortie = False
ThisWorkbook.Save
Application.Quit
End Sub
Sub LaSortie3()
Application.DisplayFullScreen = False
CancelSortie = False
ThisWorkbook.Close False
End Sub
Sub LaSortie4()
Application.DisplayFullScreen = False
CancelSortie = False
Application.Quit
End Sub
j'ai essayer 6 fois chaque sortie et elles ont fonctionnées 6 fois.. ca faisait un bout que je cherchais et c'etait le public que j'avais zappé...
Merci quand meme a vous
cordialement
Le Pingou
Messages postés
12187
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
14 novembre 2024
1 449
26 oct. 2014 à 21:59
26 oct. 2014 à 21:59
Bonjour,
Juste au passage, il semble que votre code est boiteux .... !
Vous avez bien un seul classeur d'ouvert...Oui / Non !
Et pour quitter il y a 3 choix :
si OUI : enregistrer et fermer le classeur ... !
si NON : fermer le classeur
si ANULER : ne rien faire
Juste au passage, il semble que votre code est boiteux .... !
Vous avez bien un seul classeur d'ouvert...Oui / Non !
Et pour quitter il y a 3 choix :
si OUI : enregistrer et fermer le classeur ... !
si NON : fermer le classeur
si ANULER : ne rien faire
Le Pingou
Messages postés
12187
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
14 novembre 2024
1 449
27 oct. 2014 à 14:44
27 oct. 2014 à 14:44
Bonjour,
Tant mieux pour vous. Cependant entre temps j'ai créé un classeur avec [UserForm] pour la commande [Quitter] et tout fonctionne correctement avec votre premier code légèrement modifié :
Tant mieux pour vous. Cependant entre temps j'ai créé un classeur avec [UserForm] pour la commande [Quitter] et tout fonctionne correctement avec votre premier code légèrement modifié :
Private Sub CommandButton1_Click()
'Private Sub CommandButton8_Click() ' boite de dialogue pour la sauvegarde ou non
Réponse = MsgBox("voulez vous sauvegarder ?" & Chr(13) & Chr(10) & " OUI pour enregistrer et quitter" & Chr(13) & Chr(10) & " NON pour fermer sans enregistrer(perte des saisies)", vbYesNoCancel)
If Réponse = vbYes Then
If Workbooks.Count <> 1 Then
Application.DisplayFullScreen = False
ActiveWorkbook.Close True
End If
If Workbooks.Count = 1 Then
ThisWorkbook.Save
Application.Quit
End If
ElseIf Réponse = vbNo Then
If Workbooks.Count <> 1 Then
Application.DisplayFullScreen = False
ActiveWorkbook.Close False
End If
If Workbooks.Count = 1 Then
ThisWorkbook.Saved = True
Application.Quit
End If
ElseIf Réponse = vbCancel Then
Application.DisplayFullScreen = True
MsgBox ("fermeture fichier abandonné ; les données ne sont pas sauvegardées")
End If
End Sub