j'essaie de créer une barre de navigation présente sur toutes les feuilles
d'un classeur Excel (un peu la notion de "frame" dans une page HTML).
Cette barre comporte plus ou moins de boutons en fonction d'un login fait à
l'ouverture du classeur.
Pour l'instant je définis cette barre sur la première page, puis je la
reproduis sur chacune des pages :
Sheets(1).Shapes("barrenav").Copy
For i = 2 To Worksheets.Count
Sheets(i).Select
Range("A1").Select
On Error Resume Next
ActiveSheet.Shapes("barrenav").Delete
ActiveSheet.Paste
Next
Cela fonctionne, mais trois inconvénients :
1 - c'est long
2 - certaines macros se déclenchent à l'activation d'un onglet, ce qui n'est
pas l'effet souhaité
3 - cela donne éventuellement accès à certaines pages qui ne devraient pas
être vues par l'utilisateur en question.
Y aurait-il par hasard un moyen de créer ou de modifier une forme "parent"
(à l'instar des msoForms par exemple) dont la modification se répercute
ensuite sur tous les "enfants" ?
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
Hervé
Salut Dude, Et une simple barre d'outils ? Hervé.
"Dude" a écrit dans le message news:
Bonjour,
j'essaie de créer une barre de navigation présente sur toutes les feuilles d'un classeur Excel (un peu la notion de "frame" dans une page HTML). Cette barre comporte plus ou moins de boutons en fonction d'un login fait à
l'ouverture du classeur.
Pour l'instant je définis cette barre sur la première page, puis je la reproduis sur chacune des pages :
Sheets(1).Shapes("barrenav").Copy For i = 2 To Worksheets.Count Sheets(i).Select Range("A1").Select On Error Resume Next ActiveSheet.Shapes("barrenav").Delete ActiveSheet.Paste Next
Cela fonctionne, mais trois inconvénients : 1 - c'est long 2 - certaines macros se déclenchent à l'activation d'un onglet, ce qui n'est
pas l'effet souhaité 3 - cela donne éventuellement accès à certaines pages qui ne devraient pas être vues par l'utilisateur en question.
Y aurait-il par hasard un moyen de créer ou de modifier une forme "parent" (à l'instar des msoForms par exemple) dont la modification se répercute ensuite sur tous les "enfants" ?
Salut Dude,
Et une simple barre d'outils ?
Hervé.
"Dude" <ewinckler@hotmail.com> a écrit dans le message news:
OU2iK73EFHA.2540@TK2MSFTNGP09.phx.gbl...
Bonjour,
j'essaie de créer une barre de navigation présente sur toutes les feuilles
d'un classeur Excel (un peu la notion de "frame" dans une page HTML).
Cette barre comporte plus ou moins de boutons en fonction d'un login fait
à
l'ouverture du classeur.
Pour l'instant je définis cette barre sur la première page, puis je la
reproduis sur chacune des pages :
Sheets(1).Shapes("barrenav").Copy
For i = 2 To Worksheets.Count
Sheets(i).Select
Range("A1").Select
On Error Resume Next
ActiveSheet.Shapes("barrenav").Delete
ActiveSheet.Paste
Next
Cela fonctionne, mais trois inconvénients :
1 - c'est long
2 - certaines macros se déclenchent à l'activation d'un onglet, ce qui
n'est
pas l'effet souhaité
3 - cela donne éventuellement accès à certaines pages qui ne devraient pas
être vues par l'utilisateur en question.
Y aurait-il par hasard un moyen de créer ou de modifier une forme "parent"
(à l'instar des msoForms par exemple) dont la modification se répercute
ensuite sur tous les "enfants" ?
j'essaie de créer une barre de navigation présente sur toutes les feuilles d'un classeur Excel (un peu la notion de "frame" dans une page HTML). Cette barre comporte plus ou moins de boutons en fonction d'un login fait à
l'ouverture du classeur.
Pour l'instant je définis cette barre sur la première page, puis je la reproduis sur chacune des pages :
Sheets(1).Shapes("barrenav").Copy For i = 2 To Worksheets.Count Sheets(i).Select Range("A1").Select On Error Resume Next ActiveSheet.Shapes("barrenav").Delete ActiveSheet.Paste Next
Cela fonctionne, mais trois inconvénients : 1 - c'est long 2 - certaines macros se déclenchent à l'activation d'un onglet, ce qui n'est
pas l'effet souhaité 3 - cela donne éventuellement accès à certaines pages qui ne devraient pas être vues par l'utilisateur en question.
Y aurait-il par hasard un moyen de créer ou de modifier une forme "parent" (à l'instar des msoForms par exemple) dont la modification se répercute ensuite sur tous les "enfants" ?
Dude
Hello Hervé,
Effectivement c'est une solution, seulement le "design" d'une barre d'outils est un peu limité et vu que je compte beaucoup là-dessus j'aimerais éviter. Merci pour ton aide
Dude (pour info, je vais également poster ce thread dans le groupe "developper.vba". Mille excuses pour cette entorse à la netiquette)
"Hervé" wrote in message news:%
Salut Dude, Et une simple barre d'outils ? Hervé.
"Dude" a écrit dans le message news:
Bonjour,
j'essaie de créer une barre de navigation présente sur toutes les feuilles d'un classeur Excel (un peu la notion de "frame" dans une page HTML). Cette barre comporte plus ou moins de boutons en fonction d'un login fait à
l'ouverture du classeur.
Pour l'instant je définis cette barre sur la première page, puis je la reproduis sur chacune des pages :
Sheets(1).Shapes("barrenav").Copy For i = 2 To Worksheets.Count Sheets(i).Select Range("A1").Select On Error Resume Next ActiveSheet.Shapes("barrenav").Delete ActiveSheet.Paste Next
Cela fonctionne, mais trois inconvénients : 1 - c'est long 2 - certaines macros se déclenchent à l'activation d'un onglet, ce qui n'est
pas l'effet souhaité 3 - cela donne éventuellement accès à certaines pages qui ne devraient pas être vues par l'utilisateur en question.
Y aurait-il par hasard un moyen de créer ou de modifier une forme "parent" (à l'instar des msoForms par exemple) dont la modification se répercute ensuite sur tous les "enfants" ?
Hello Hervé,
Effectivement c'est une solution, seulement le "design" d'une barre d'outils
est un peu limité et vu que je compte beaucoup là-dessus j'aimerais éviter.
Merci pour ton aide
Dude
(pour info, je vais également poster ce thread dans le groupe
"developper.vba". Mille excuses pour cette entorse à la netiquette)
"Hervé" <hmsilve@wanadoo.fr> wrote in message
news:%23uxJmy4EFHA.1392@tk2msftngp13.phx.gbl...
Salut Dude,
Et une simple barre d'outils ?
Hervé.
"Dude" <ewinckler@hotmail.com> a écrit dans le message news:
OU2iK73EFHA.2540@TK2MSFTNGP09.phx.gbl...
Bonjour,
j'essaie de créer une barre de navigation présente sur toutes les
feuilles
d'un classeur Excel (un peu la notion de "frame" dans une page HTML).
Cette barre comporte plus ou moins de boutons en fonction d'un login fait
à
l'ouverture du classeur.
Pour l'instant je définis cette barre sur la première page, puis je la
reproduis sur chacune des pages :
Sheets(1).Shapes("barrenav").Copy
For i = 2 To Worksheets.Count
Sheets(i).Select
Range("A1").Select
On Error Resume Next
ActiveSheet.Shapes("barrenav").Delete
ActiveSheet.Paste
Next
Cela fonctionne, mais trois inconvénients :
1 - c'est long
2 - certaines macros se déclenchent à l'activation d'un onglet, ce qui
n'est
pas l'effet souhaité
3 - cela donne éventuellement accès à certaines pages qui ne devraient
pas
être vues par l'utilisateur en question.
Y aurait-il par hasard un moyen de créer ou de modifier une forme
"parent"
(à l'instar des msoForms par exemple) dont la modification se répercute
ensuite sur tous les "enfants" ?
Effectivement c'est une solution, seulement le "design" d'une barre d'outils est un peu limité et vu que je compte beaucoup là-dessus j'aimerais éviter. Merci pour ton aide
Dude (pour info, je vais également poster ce thread dans le groupe "developper.vba". Mille excuses pour cette entorse à la netiquette)
"Hervé" wrote in message news:%
Salut Dude, Et une simple barre d'outils ? Hervé.
"Dude" a écrit dans le message news:
Bonjour,
j'essaie de créer une barre de navigation présente sur toutes les feuilles d'un classeur Excel (un peu la notion de "frame" dans une page HTML). Cette barre comporte plus ou moins de boutons en fonction d'un login fait à
l'ouverture du classeur.
Pour l'instant je définis cette barre sur la première page, puis je la reproduis sur chacune des pages :
Sheets(1).Shapes("barrenav").Copy For i = 2 To Worksheets.Count Sheets(i).Select Range("A1").Select On Error Resume Next ActiveSheet.Shapes("barrenav").Delete ActiveSheet.Paste Next
Cela fonctionne, mais trois inconvénients : 1 - c'est long 2 - certaines macros se déclenchent à l'activation d'un onglet, ce qui n'est
pas l'effet souhaité 3 - cela donne éventuellement accès à certaines pages qui ne devraient pas être vues par l'utilisateur en question.
Y aurait-il par hasard un moyen de créer ou de modifier une forme "parent" (à l'instar des msoForms par exemple) dont la modification se répercute ensuite sur tous les "enfants" ?