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
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
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
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
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
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 > >
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
>
>
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 > >