Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Conflit 2 Barres d' outils

2 réponses
Avatar
Georges
Bonjour,
J’ai créé un document modèle *.xlt avec barre d'outils personnalisée. Comme
prévu la BO apparaît à l’ouverture et disparaît à la fermeture du fichier.
Mon problème est lorsque j’ouvre 2 fichiers issus de ce modèle un message
d’erreur d’exécution. Et ma BO disparaît. Existe-il un moyen pour que cela
fonctionne. D’avance merci
Georges

Trouvez ci dessous mon code
Sub auto_open()
Dim barre As CommandBar
Dim bouton As CommandBarControl
Set barre = CommandBars.Add(Name:="Méthodes", Position:=msoBarTop)
barre.Visible = True

Sub auto_close()
On Error Resume Next
CommandBars("Méthodes").Delete
End Sub

2 réponses

Avatar
Papyjac
BOnjour Georges

Effectivement ta solution ne marche pas avec 2 classeurs

Il faut que tu acceptes que la barre d'outils soit déjà ouverte
Et il ne faut pas la fermer en sortant si plusieurs classeurs tu même type
sont ouverts

Tu peux mettre un ON ERROR au moement de la création, comme du l'a fait à la
destruction

Dans ton cas, je pense que ce n'est pas le classeur qui doit piloter la
barre d'outils, mais la barre d'outils qui doit piloter les classeurs

Tu y réfléchiras tranquillement, l'architecture est un peu plus technique.

--
Papyjac


"Georges" a écrit :

Bonjour,
J’ai créé un document modèle *.xlt avec barre d'outils personnalisée. Comme
prévu la BO apparaît à l’ouverture et disparaît à la fermeture du fichier.
Mon problème est lorsque j’ouvre 2 fichiers issus de ce modèle un message
d’erreur d’exécution. Et ma BO disparaît. Existe-il un moyen pour que cela
fonctionne. D’avance merci
Georges

Trouvez ci dessous mon code
Sub auto_open()
Dim barre As CommandBar
Dim bouton As CommandBarControl
Set barre = CommandBars.Add(Name:="Méthodes", Position:=msoBarTop)
barre.Visible = True

Sub auto_close()
On Error Resume Next
CommandBars("Méthodes").Delete
End Sub




Avatar
Georges
Bonjour Payjac
Merci pour ces informations.
Désolé pour le retard .
Georges

"Papyjac" a écrit :

BOnjour Georges

Effectivement ta solution ne marche pas avec 2 classeurs

Il faut que tu acceptes que la barre d'outils soit déjà ouverte
Et il ne faut pas la fermer en sortant si plusieurs classeurs tu même type
sont ouverts

Tu peux mettre un ON ERROR au moement de la création, comme du l'a fait à la
destruction

Dans ton cas, je pense que ce n'est pas le classeur qui doit piloter la
barre d'outils, mais la barre d'outils qui doit piloter les classeurs

Tu y réfléchiras tranquillement, l'architecture est un peu plus technique.

--
Papyjac


"Georges" a écrit :

> Bonjour,
> J’ai créé un document modèle *.xlt avec barre d'outils personnalisée. Comme
> prévu la BO apparaît à l’ouverture et disparaît à la fermeture du fichier.
> Mon problème est lorsque j’ouvre 2 fichiers issus de ce modèle un message
> d’erreur d’exécution. Et ma BO disparaît. Existe-il un moyen pour que cela
> fonctionne. D’avance merci
> Georges
>
> Trouvez ci dessous mon code
> Sub auto_open()
> Dim barre As CommandBar
> Dim bouton As CommandBarControl
> Set barre = CommandBars.Add(Name:="Méthodes", Position:=msoBarTop)
> barre.Visible = True
>
> Sub auto_close()
> On Error Resume Next
> CommandBars("Méthodes").Delete
> End Sub
>
>