Microsoft 365 Blocage VBA suite erreur

JBL07

XLDnaute Occasionnel
Bonjour à tous,

Au secours ! :eek::)
Je viens de faire une erreur en mettant dans un workbook le code :
Private Sub Workbook _BeforeClose ( Cancel as Bolean )
This WorkBook.Save
End Sub

Alors qu'il y avait déjà un code "Before close"
Une fenêtre d'erreur est apparue, et TOUT est bloqué ( même les options pour décocher les fenêtre d'erreur etc )

J'ai mis ce code car sur un module de fermeture automatique avant un temps d'inactivité, comportant un .Save, la fenêtre de demande d'enregistrement continuait à apparaître
Bref, le classeur est lourd, beaucoup de codes, je ne sais pas comment faire pour débloquer et supprimer mon doublon !!
Pouvez-vous m'aider ??

Image du VBA bloquant:
1608471369607.png
 

JBL07

XLDnaute Occasionnel
Un grand merci, Staple !

Je me permet d'aborder mon autre souci, du coup :

Alors que dans mon code de module de fermeture après inactivité, j'ai :
Sub Fermeture()

With ThisWorkbook
.Save
.Application.Quit
End With
End Sub

Et que je viens d'ajouter dans mon Worbook ( j'ai testé aussi sans) :

Private Sub Workbook_BeforeClose(Cancel As Boolean)
ThisWorkbook.Save

Même chose en remplaçant par :

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.DisplayAlerts = False

Le classeur me demande toujours si je veux enregistrer :(
Pourquoi, et comment faire ?

Merci de ton ( ou votre ! ) aide
 

Staple1600

XLDnaute Barbatruc
Re

Si j'étais moi, et si j'étais devant mon PC, il est possible que j'arrive à me convaincre d'utiliser ceci:
VB:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim vRep%
If Cancel = True Then Exit Sub
vRep = _
MsgBox("Il est l'heure de fermer le classeur?", vbYesNo + vbCritical, "Achtung, Baby!")
If vRep = vbNo Then Cancel = True
End Sub
Mais si j'étais moi...je méfierais ;)
 

JBL07

XLDnaute Occasionnel
J'aime beaucoup l'idée de la MsgBox, mais il faut que je sois devant pour valider
J'ai mis dans ce classeur du code pour qu'il ferme automatiquement après un temps d'inactivité
Avec cet ajout ( mais peut-être ordonné ), je dois valider le VbYes, mais celà me demande toujours si j'enregistre mes modif
Ca doit se fermer et enregistrer au bout d'un temps déterminé si je n'y touche plus

Private Sub Workbook_BeforeClose(Cancel As Boolean)

With Sheets("Logs").ListObjects("_Logs").ListRows.Add
.Range(1) = "Fermeture du classeur"
.Range(2) = Now
End With
Range("I9").Select

Dim vRep%
If Cancel = True Then Exit Sub
vRep = _
MsgBox("Il est l'heure de fermer le classeur?", vbYesNo + vbCritical, "Achtung, Baby!")
If vRep = vbNo Then Cancel = True
End Sub
 

Staple1600

XLDnaute Barbatruc
Re

Si j'étais moi, je me poserai la question suivante:
"Quel est le niveau de maitrise de VBA de JBL07?"
Admettons que me je la sois posée, sans prévenir ;)
Illico, je me pose ensuite celle-ci:
• Pourquoi diable, faut-il fermer Excel si inactivité?
Excel dans ses dernières versions gère cela tout seul comme un grand sans macros.
=>Fichier/Options/Enregistrement/[x]Enregistrer les informations de récupération toutes les ...
Oui, si j'étais moi, je serai dans ce questionnement un dimanche soir de décembre (celui qui suit l'élection de Miss France qui elle ne possède pas d'option de récupération automatique)
;)
 

JBL07

XLDnaute Occasionnel
MDR.. Bah mon niveau est débutant piochant à droite et à gauche, donc beaucoup beaucoup de lacunes et des erreurs
Je ferme Excel si inactivité car j'ai un programme comptabilisant le temps passé sur ce fichier, et je peux en moduler la durée, et je partage de plus mon pc avec une personne ayant une forte tendance à partir en laissant tout ouvert :)
 

Staple1600

XLDnaute Barbatruc
Re

Je ferme Excel si inactivité car j'ai un programme comptabilisant le temps passé sur ce fichier
Et tu acceptes cela de ton plein gré
Ou tu es retenu en captivité par des suppots du Grand Capital qui te font travailler comme un gueux pour un salaire de misére.
C'est la lutte finale ....
Infirmier, Staple nous refait une crise!
Vite donnez lui un TCD tout neuf en Option Explicit
(matin et soir)
;)
 

Statistiques des forums

Discussions
312 103
Messages
2 085 322
Membres
102 862
dernier inscrit
Emma35400