Bonjour, voici ma problématique :
J'ai un fichier Excel qui ouvre directement un UserForm dans le Workbook_Open(). Puis au retour de ce UserForm, Excel se ferme automatiquement. Rien de particulier jusqu'ici.
Le problème est qu'à chaque lancement du fichier Excel, j'ai le message qui me dit que les macros sont désactivées, et j'ai beau "Activer le contenu", mon UserForm s'affiche bien... puis au prochain lancement le message est de nouveau là.
Mon centre de gestion de la confidentialité est bien paramétré sur "désactiver les macros AVEC notification", je sais bien comment cela fonctionne.
D'ailleurs, si j'ouvre un autre fichier Excel, avec macros, mais qui lui ne se ferme pas automatiquement, càd que c'est l'utilisateur qui ferme manuellement Excel (je pense que c'est ici que tout se joue), le message ne réapparaît pas...
Voici mon code (cf. pièce jointe) :
Par exemple, le code minimaliste ci-dessous fonctionne très bien, ni Close ni Quit, c'est à dire que dès la cloture du UserForm je me retrouve sur ma feuille principale, je ferme excel, et la tout va bien le warning n'apparaitra plus au prochain lancement de ce fichier Excel :
Si vous avez la solution à cette problématique (à part activer toutes les macros, ou gérer une Trust location), je suis preneur.
Merci de votre aide
J'ai un fichier Excel qui ouvre directement un UserForm dans le Workbook_Open(). Puis au retour de ce UserForm, Excel se ferme automatiquement. Rien de particulier jusqu'ici.
Le problème est qu'à chaque lancement du fichier Excel, j'ai le message qui me dit que les macros sont désactivées, et j'ai beau "Activer le contenu", mon UserForm s'affiche bien... puis au prochain lancement le message est de nouveau là.
Mon centre de gestion de la confidentialité est bien paramétré sur "désactiver les macros AVEC notification", je sais bien comment cela fonctionne.
D'ailleurs, si j'ouvre un autre fichier Excel, avec macros, mais qui lui ne se ferme pas automatiquement, càd que c'est l'utilisateur qui ferme manuellement Excel (je pense que c'est ici que tout se joue), le message ne réapparaît pas...
Voici mon code (cf. pièce jointe) :
VB:
Private Sub Workbook_Open()
' j'affiche ma fenêtre en modal
myUserForm.Show vbModal
' au retour de ma fenêtre, je ferme ce classeur en sauvegardant
Me.Close savechanges:=True
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
' je ferme Excel si aucun autre classeur n'est ouvert
If Application.Workbooks.Count = 1 Then Application.Quit
End Sub
Par exemple, le code minimaliste ci-dessous fonctionne très bien, ni Close ni Quit, c'est à dire que dès la cloture du UserForm je me retrouve sur ma feuille principale, je ferme excel, et la tout va bien le warning n'apparaitra plus au prochain lancement de ce fichier Excel :
VB:
Private Sub Workbook_Open()
' j'affiche ma fenêtre en modal
myUserForm.Show vbModal
End Sub
Merci de votre aide
Pièces jointes
Dernière édition: