Je viens d'installer Office2010.
Je recopie dans le Personnal.xlsb une macro qui me permettait, à l'ouverture
d'Excel2003, de créer un menu me donnant accès à, principalement, des outils
de présentation de feuille.
Dans ce menu, j'avais des boutons avec icones personnalisées.
Au sein de cette macro de création de menu j'ai, entre autres à titre
d'exemple, l'opération suivante.
Set BtnPop = .Controls.Add(msoControlPopup)
With BtnPop
.BeginGroup = True
.Caption = "Hauteur Ligne..."
Set Btn = .Controls.Add(msoControlButton)
Worksheets("Feuil1").Shapes("Image 1").Copy 'Copie l'icone
personnalisée
With Btn
.BeginGroup = True
.Style = msoButtonIconAndCaption
.Caption = "Hauteur : 5"
.OnAction = "Hauteur_5"
.PasteFace
End With
Set Btn = .Controls.Add(msoControlButton)
Worksheets("Feuil1").Shapes("Image 2").Copy 'Copie l'icone
personnalisée
With Btn
.Style = msoButtonIconAndCaption
.Caption = "Hauteur : 16"
.OnAction = "Hauteur_16"
.PasteFace
End With
End With
L'opération de copie de l'image (.PasteFace) bloque sous Excel2010.
Je n'ai pas trouvé (ou pas su trouver) dans l'aide les codes de
remplacement.
Qu'est-ce que je fais de mal ?
Par quoi cette instruction doit-elle être remplacée ?
Toutes solutions et/ou mises sur la voie seront appréciées.
Bien cordialement
Michel
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
Péhemme
Je me complète. Si j'utilise la réponse que m'avait faite Denis lorsque j'ai posté sur ce forum, il y a quelques années, la même question concernant Excel2007 (problème abandonné entre temps suite aux conseils de Misange qui me précisait que "cela sera *plus facile* sous 2010") : Sub test() Dim Mbar As CommandBar Dim Btn As CommandBarButton On Error Resume Next Application.CommandBars("Denis").Delete Set Mbar = Application.CommandBars.Add("Denis") With Mbar .Visible = True Set Btn = .Controls.Add(msoControlButton) With ThisWorkbook .Worksheets("Feuil1").Shapes("Picture 2").Copy With Btn .Style = msoButtonIconAndCaption .Caption = "Hauteur : 16" '.OnAction = "Hauteur_16" .PasteFace End With End With End With End Sub j'obtiens, dans le ruban, dans l'onglet complément créé automatiquement, une "rubrique : Barres d'outils personnalisées", le bouton *avec* la copie de l'icone. Si je lance ma macro qui crée "un menu" (en Excel2003) j'obtiens, toujours dans mon onglet complément une rubrique intitulée "Commandes de menu" mais la macro bloque au niveau du premier : .PasteFace... Va comprendre !? Mes fichiers de tests sont bien en .xlsm Quelque chose m'échappe ! Mais quoi ? Merci de vos recommandations. Michel
"Péhemme" a écrit dans le message de news:4ed26069$0$2519$
Bonjour à Tous,
Je viens d'installer Office2010. Je recopie dans le Personnal.xlsb une macro qui me permettait, à l'ouverture d'Excel2003, de créer un menu me donnant accès à, principalement, des outils de présentation de feuille. Dans ce menu, j'avais des boutons avec icones personnalisées. Au sein de cette macro de création de menu j'ai, entre autres à titre d'exemple, l'opération suivante.
Set BtnPop = .Controls.Add(msoControlPopup) With BtnPop .BeginGroup = True .Caption = "Hauteur Ligne..." Set Btn = .Controls.Add(msoControlButton) Worksheets("Feuil1").Shapes("Image 1").Copy 'Copie l'icone personnalisée With Btn .BeginGroup = True .Style = msoButtonIconAndCaption .Caption = "Hauteur : 5" .OnAction = "Hauteur_5" .PasteFace End With Set Btn = .Controls.Add(msoControlButton) Worksheets("Feuil1").Shapes("Image 2").Copy 'Copie l'icone personnalisée With Btn .Style = msoButtonIconAndCaption .Caption = "Hauteur : 16" .OnAction = "Hauteur_16" .PasteFace End With End With
L'opération de copie de l'image (.PasteFace) bloque sous Excel2010. Je n'ai pas trouvé (ou pas su trouver) dans l'aide les codes de remplacement. Qu'est-ce que je fais de mal ? Par quoi cette instruction doit-elle être remplacée ?
Toutes solutions et/ou mises sur la voie seront appréciées. Bien cordialement Michel
Je me complète.
Si j'utilise la réponse que m'avait faite Denis lorsque j'ai posté sur ce
forum, il y a quelques années, la même question concernant Excel2007
(problème abandonné entre temps suite aux conseils de Misange qui me
précisait que "cela sera *plus facile* sous 2010") :
Sub test()
Dim Mbar As CommandBar
Dim Btn As CommandBarButton
On Error Resume Next
Application.CommandBars("Denis").Delete
Set Mbar = Application.CommandBars.Add("Denis")
With Mbar
.Visible = True
Set Btn = .Controls.Add(msoControlButton)
With ThisWorkbook
.Worksheets("Feuil1").Shapes("Picture 2").Copy
With Btn
.Style = msoButtonIconAndCaption
.Caption = "Hauteur : 16"
'.OnAction = "Hauteur_16"
.PasteFace
End With
End With
End With
End Sub
j'obtiens, dans le ruban, dans l'onglet complément créé automatiquement, une
"rubrique : Barres d'outils personnalisées", le bouton *avec* la copie de
l'icone.
Si je lance ma macro qui crée "un menu" (en Excel2003) j'obtiens, toujours
dans mon onglet complément une rubrique intitulée "Commandes de menu" mais
la macro bloque au niveau du premier : .PasteFace...
Va comprendre !?
Mes fichiers de tests sont bien en .xlsm
Quelque chose m'échappe !
Mais quoi ?
Merci de vos recommandations.
Michel
"Péhemme" <xx@xx.xx> a écrit dans le message de
news:4ed26069$0$2519$ba4acef3@reader.news.orange.fr...
Bonjour à Tous,
Je viens d'installer Office2010.
Je recopie dans le Personnal.xlsb une macro qui me permettait, à
l'ouverture d'Excel2003, de créer un menu me donnant accès à,
principalement, des outils de présentation de feuille.
Dans ce menu, j'avais des boutons avec icones personnalisées.
Au sein de cette macro de création de menu j'ai, entre autres à titre
d'exemple, l'opération suivante.
Set BtnPop = .Controls.Add(msoControlPopup)
With BtnPop
.BeginGroup = True
.Caption = "Hauteur Ligne..."
Set Btn = .Controls.Add(msoControlButton)
Worksheets("Feuil1").Shapes("Image 1").Copy 'Copie l'icone
personnalisée
With Btn
.BeginGroup = True
.Style = msoButtonIconAndCaption
.Caption = "Hauteur : 5"
.OnAction = "Hauteur_5"
.PasteFace
End With
Set Btn = .Controls.Add(msoControlButton)
Worksheets("Feuil1").Shapes("Image 2").Copy 'Copie l'icone
personnalisée
With Btn
.Style = msoButtonIconAndCaption
.Caption = "Hauteur : 16"
.OnAction = "Hauteur_16"
.PasteFace
End With
End With
L'opération de copie de l'image (.PasteFace) bloque sous Excel2010.
Je n'ai pas trouvé (ou pas su trouver) dans l'aide les codes de
remplacement.
Qu'est-ce que je fais de mal ?
Par quoi cette instruction doit-elle être remplacée ?
Toutes solutions et/ou mises sur la voie seront appréciées.
Bien cordialement
Michel
Je me complète. Si j'utilise la réponse que m'avait faite Denis lorsque j'ai posté sur ce forum, il y a quelques années, la même question concernant Excel2007 (problème abandonné entre temps suite aux conseils de Misange qui me précisait que "cela sera *plus facile* sous 2010") : Sub test() Dim Mbar As CommandBar Dim Btn As CommandBarButton On Error Resume Next Application.CommandBars("Denis").Delete Set Mbar = Application.CommandBars.Add("Denis") With Mbar .Visible = True Set Btn = .Controls.Add(msoControlButton) With ThisWorkbook .Worksheets("Feuil1").Shapes("Picture 2").Copy With Btn .Style = msoButtonIconAndCaption .Caption = "Hauteur : 16" '.OnAction = "Hauteur_16" .PasteFace End With End With End With End Sub j'obtiens, dans le ruban, dans l'onglet complément créé automatiquement, une "rubrique : Barres d'outils personnalisées", le bouton *avec* la copie de l'icone. Si je lance ma macro qui crée "un menu" (en Excel2003) j'obtiens, toujours dans mon onglet complément une rubrique intitulée "Commandes de menu" mais la macro bloque au niveau du premier : .PasteFace... Va comprendre !? Mes fichiers de tests sont bien en .xlsm Quelque chose m'échappe ! Mais quoi ? Merci de vos recommandations. Michel
"Péhemme" a écrit dans le message de news:4ed26069$0$2519$
Bonjour à Tous,
Je viens d'installer Office2010. Je recopie dans le Personnal.xlsb une macro qui me permettait, à l'ouverture d'Excel2003, de créer un menu me donnant accès à, principalement, des outils de présentation de feuille. Dans ce menu, j'avais des boutons avec icones personnalisées. Au sein de cette macro de création de menu j'ai, entre autres à titre d'exemple, l'opération suivante.
Set BtnPop = .Controls.Add(msoControlPopup) With BtnPop .BeginGroup = True .Caption = "Hauteur Ligne..." Set Btn = .Controls.Add(msoControlButton) Worksheets("Feuil1").Shapes("Image 1").Copy 'Copie l'icone personnalisée With Btn .BeginGroup = True .Style = msoButtonIconAndCaption .Caption = "Hauteur : 5" .OnAction = "Hauteur_5" .PasteFace End With Set Btn = .Controls.Add(msoControlButton) Worksheets("Feuil1").Shapes("Image 2").Copy 'Copie l'icone personnalisée With Btn .Style = msoButtonIconAndCaption .Caption = "Hauteur : 16" .OnAction = "Hauteur_16" .PasteFace End With End With
L'opération de copie de l'image (.PasteFace) bloque sous Excel2010. Je n'ai pas trouvé (ou pas su trouver) dans l'aide les codes de remplacement. Qu'est-ce que je fais de mal ? Par quoi cette instruction doit-elle être remplacée ?
Toutes solutions et/ou mises sur la voie seront appréciées. Bien cordialement Michel
MichD
Bonjour,
Voici un exemple, tu devras adapter le nom des objets...
Ça fonctionne très bien!
'----------------------------------------- Sub test()
On Error Resume Next Application.CommandBars("MichD").Delete Application.CommandBars.Add "MichD"
With Application.CommandBars("MichD") .Visible = True With .Controls.Add(msoControlPopup) .BeginGroup = True .Caption = "Hauteur Ligne..." With .Controls.Add .Style = msoButtonIconAndCaption .Caption = "Ok1" 'Adapte le nom du module où est la macro .OnAction = "Module7.MaMacro" 'Nom de la feuille et l'image où se retrouve l'image 'Feuil1 n'est pas le nom de l'onglet de la feuille 'mais la propriété Name Feuil1.Shapes("MichD1").Copy 'Pour utiliser l'image d'un bouton existant '.FaceId = 19 .PasteFace End With With .Controls.Add .Style = msoButtonIconAndCaption .Caption = "Ok2" 'Adapte le nom du module où est la macro .OnAction = "Module7.MaMacro1" Feuil1.Shapes("MichD2").Copy '.FaceId = 27 .PasteFace End With End With End With
End Sub '-----------------------------------------
MichD ------------------------------------------ "Péhemme" a écrit dans le message de groupe de discussion : 4ed26069$0$2519$
Bonjour à Tous,
Je viens d'installer Office2010. Je recopie dans le Personnal.xlsb une macro qui me permettait, à l'ouverture d'Excel2003, de créer un menu me donnant accès à, principalement, des outils de présentation de feuille. Dans ce menu, j'avais des boutons avec icones personnalisées. Au sein de cette macro de création de menu j'ai, entre autres à titre d'exemple, l'opération suivante.
Set BtnPop = .Controls.Add(msoControlPopup) With BtnPop .BeginGroup = True .Caption = "Hauteur Ligne..." Set Btn = .Controls.Add(msoControlButton) Worksheets("Feuil1").Shapes("Image 1").Copy 'Copie l'icone personnalisée With Btn .BeginGroup = True .Style = msoButtonIconAndCaption .Caption = "Hauteur : 5" .OnAction = "Hauteur_5" .PasteFace End With Set Btn = .Controls.Add(msoControlButton) Worksheets("Feuil1").Shapes("Image 2").Copy 'Copie l'icone personnalisée With Btn .Style = msoButtonIconAndCaption .Caption = "Hauteur : 16" .OnAction = "Hauteur_16" .PasteFace End With End With
L'opération de copie de l'image (.PasteFace) bloque sous Excel2010. Je n'ai pas trouvé (ou pas su trouver) dans l'aide les codes de remplacement. Qu'est-ce que je fais de mal ? Par quoi cette instruction doit-elle être remplacée ?
Toutes solutions et/ou mises sur la voie seront appréciées. Bien cordialement Michel
Bonjour,
Voici un exemple, tu devras adapter le nom des objets...
Ça fonctionne très bien!
'-----------------------------------------
Sub test()
On Error Resume Next
Application.CommandBars("MichD").Delete
Application.CommandBars.Add "MichD"
With Application.CommandBars("MichD")
.Visible = True
With .Controls.Add(msoControlPopup)
.BeginGroup = True
.Caption = "Hauteur Ligne..."
With .Controls.Add
.Style = msoButtonIconAndCaption
.Caption = "Ok1"
'Adapte le nom du module où est la macro
.OnAction = "Module7.MaMacro"
'Nom de la feuille et l'image où se retrouve l'image
'Feuil1 n'est pas le nom de l'onglet de la feuille
'mais la propriété Name
Feuil1.Shapes("MichD1").Copy
'Pour utiliser l'image d'un bouton existant
'.FaceId = 19
.PasteFace
End With
With .Controls.Add
.Style = msoButtonIconAndCaption
.Caption = "Ok2"
'Adapte le nom du module où est la macro
.OnAction = "Module7.MaMacro1"
Feuil1.Shapes("MichD2").Copy
'.FaceId = 27
.PasteFace
End With
End With
End With
End Sub
'-----------------------------------------
MichD
------------------------------------------
"Péhemme" a écrit dans le message de groupe de discussion : 4ed26069$0$2519$ba4acef3@reader.news.orange.fr...
Bonjour à Tous,
Je viens d'installer Office2010.
Je recopie dans le Personnal.xlsb une macro qui me permettait, à l'ouverture
d'Excel2003, de créer un menu me donnant accès à, principalement, des outils
de présentation de feuille.
Dans ce menu, j'avais des boutons avec icones personnalisées.
Au sein de cette macro de création de menu j'ai, entre autres à titre
d'exemple, l'opération suivante.
Set BtnPop = .Controls.Add(msoControlPopup)
With BtnPop
.BeginGroup = True
.Caption = "Hauteur Ligne..."
Set Btn = .Controls.Add(msoControlButton)
Worksheets("Feuil1").Shapes("Image 1").Copy 'Copie l'icone
personnalisée
With Btn
.BeginGroup = True
.Style = msoButtonIconAndCaption
.Caption = "Hauteur : 5"
.OnAction = "Hauteur_5"
.PasteFace
End With
Set Btn = .Controls.Add(msoControlButton)
Worksheets("Feuil1").Shapes("Image 2").Copy 'Copie l'icone
personnalisée
With Btn
.Style = msoButtonIconAndCaption
.Caption = "Hauteur : 16"
.OnAction = "Hauteur_16"
.PasteFace
End With
End With
L'opération de copie de l'image (.PasteFace) bloque sous Excel2010.
Je n'ai pas trouvé (ou pas su trouver) dans l'aide les codes de
remplacement.
Qu'est-ce que je fais de mal ?
Par quoi cette instruction doit-elle être remplacée ?
Toutes solutions et/ou mises sur la voie seront appréciées.
Bien cordialement
Michel
Voici un exemple, tu devras adapter le nom des objets...
Ça fonctionne très bien!
'----------------------------------------- Sub test()
On Error Resume Next Application.CommandBars("MichD").Delete Application.CommandBars.Add "MichD"
With Application.CommandBars("MichD") .Visible = True With .Controls.Add(msoControlPopup) .BeginGroup = True .Caption = "Hauteur Ligne..." With .Controls.Add .Style = msoButtonIconAndCaption .Caption = "Ok1" 'Adapte le nom du module où est la macro .OnAction = "Module7.MaMacro" 'Nom de la feuille et l'image où se retrouve l'image 'Feuil1 n'est pas le nom de l'onglet de la feuille 'mais la propriété Name Feuil1.Shapes("MichD1").Copy 'Pour utiliser l'image d'un bouton existant '.FaceId = 19 .PasteFace End With With .Controls.Add .Style = msoButtonIconAndCaption .Caption = "Ok2" 'Adapte le nom du module où est la macro .OnAction = "Module7.MaMacro1" Feuil1.Shapes("MichD2").Copy '.FaceId = 27 .PasteFace End With End With End With
End Sub '-----------------------------------------
MichD ------------------------------------------ "Péhemme" a écrit dans le message de groupe de discussion : 4ed26069$0$2519$
Bonjour à Tous,
Je viens d'installer Office2010. Je recopie dans le Personnal.xlsb une macro qui me permettait, à l'ouverture d'Excel2003, de créer un menu me donnant accès à, principalement, des outils de présentation de feuille. Dans ce menu, j'avais des boutons avec icones personnalisées. Au sein de cette macro de création de menu j'ai, entre autres à titre d'exemple, l'opération suivante.
Set BtnPop = .Controls.Add(msoControlPopup) With BtnPop .BeginGroup = True .Caption = "Hauteur Ligne..." Set Btn = .Controls.Add(msoControlButton) Worksheets("Feuil1").Shapes("Image 1").Copy 'Copie l'icone personnalisée With Btn .BeginGroup = True .Style = msoButtonIconAndCaption .Caption = "Hauteur : 5" .OnAction = "Hauteur_5" .PasteFace End With Set Btn = .Controls.Add(msoControlButton) Worksheets("Feuil1").Shapes("Image 2").Copy 'Copie l'icone personnalisée With Btn .Style = msoButtonIconAndCaption .Caption = "Hauteur : 16" .OnAction = "Hauteur_16" .PasteFace End With End With
L'opération de copie de l'image (.PasteFace) bloque sous Excel2010. Je n'ai pas trouvé (ou pas su trouver) dans l'aide les codes de remplacement. Qu'est-ce que je fais de mal ? Par quoi cette instruction doit-elle être remplacée ?
Toutes solutions et/ou mises sur la voie seront appréciées. Bien cordialement Michel
Péhemme
Pardon Denis, de revenir si tardivement. J'étais sans ordi depuis le début de la semaine. Le service informatique devait me le paramétrer des VPN et autres joyeusetés pour mon séjour au Niger. J'ai récupérer mon ordi ; je pars demain matin. Je reviens donc vers toi dès que je suis connecté (ce qui, semble-t-il n'est pas gagné). Je comprends cependant que par le biais des commandbars cela devrait "le faire" facilement. Il faut donc que j'adapte mon "Menu Perso". Laisse-moi le temps d'arriver, je teste et te tiens informé. Merci pour tes aides toujours appréciées. Bien amicalement Michel
"MichD" a écrit dans le message de news:jau6dn$cep$
Bonjour,
Voici un exemple, tu devras adapter le nom des objets...
Ça fonctionne très bien!
'----------------------------------------- Sub test()
On Error Resume Next Application.CommandBars("MichD").Delete Application.CommandBars.Add "MichD"
With Application.CommandBars("MichD") .Visible = True With .Controls.Add(msoControlPopup) .BeginGroup = True .Caption = "Hauteur Ligne..." With .Controls.Add .Style = msoButtonIconAndCaption .Caption = "Ok1" 'Adapte le nom du module où est la macro .OnAction = "Module7.MaMacro" 'Nom de la feuille et l'image où se retrouve l'image 'Feuil1 n'est pas le nom de l'onglet de la feuille 'mais la propriété Name Feuil1.Shapes("MichD1").Copy 'Pour utiliser l'image d'un bouton existant '.FaceId = 19 .PasteFace End With With .Controls.Add .Style = msoButtonIconAndCaption .Caption = "Ok2" 'Adapte le nom du module où est la macro .OnAction = "Module7.MaMacro1" Feuil1.Shapes("MichD2").Copy '.FaceId = 27 .PasteFace End With End With End With
End Sub '-----------------------------------------
MichD ------------------------------------------ "Péhemme" a écrit dans le message de groupe de discussion : 4ed26069$0$2519$
Bonjour à Tous,
Je viens d'installer Office2010. Je recopie dans le Personnal.xlsb une macro qui me permettait, à l'ouverture d'Excel2003, de créer un menu me donnant accès à, principalement, des outils de présentation de feuille. Dans ce menu, j'avais des boutons avec icones personnalisées. Au sein de cette macro de création de menu j'ai, entre autres à titre d'exemple, l'opération suivante.
Set BtnPop = .Controls.Add(msoControlPopup) With BtnPop .BeginGroup = True .Caption = "Hauteur Ligne..." Set Btn = .Controls.Add(msoControlButton) Worksheets("Feuil1").Shapes("Image 1").Copy 'Copie l'icone personnalisée With Btn .BeginGroup = True .Style = msoButtonIconAndCaption .Caption = "Hauteur : 5" .OnAction = "Hauteur_5" .PasteFace End With Set Btn = .Controls.Add(msoControlButton) Worksheets("Feuil1").Shapes("Image 2").Copy 'Copie l'icone personnalisée With Btn .Style = msoButtonIconAndCaption .Caption = "Hauteur : 16" .OnAction = "Hauteur_16" .PasteFace End With End With
L'opération de copie de l'image (.PasteFace) bloque sous Excel2010. Je n'ai pas trouvé (ou pas su trouver) dans l'aide les codes de remplacement. Qu'est-ce que je fais de mal ? Par quoi cette instruction doit-elle être remplacée ?
Toutes solutions et/ou mises sur la voie seront appréciées. Bien cordialement Michel
Pardon Denis, de revenir si tardivement.
J'étais sans ordi depuis le début de la semaine. Le service informatique
devait me le paramétrer des VPN et autres joyeusetés pour mon séjour au
Niger.
J'ai récupérer mon ordi ; je pars demain matin.
Je reviens donc vers toi dès que je suis connecté (ce qui, semble-t-il n'est
pas gagné).
Je comprends cependant que par le biais des commandbars cela devrait "le
faire" facilement. Il faut donc que j'adapte mon "Menu Perso".
Laisse-moi le temps d'arriver, je teste et te tiens informé.
Merci pour tes aides toujours appréciées.
Bien amicalement
Michel
"MichD" <michdenis@hotmail.com> a écrit dans le message de
news:jau6dn$cep$1@speranza.aioe.org...
Bonjour,
Voici un exemple, tu devras adapter le nom des objets...
Ça fonctionne très bien!
'-----------------------------------------
Sub test()
On Error Resume Next
Application.CommandBars("MichD").Delete
Application.CommandBars.Add "MichD"
With Application.CommandBars("MichD")
.Visible = True
With .Controls.Add(msoControlPopup)
.BeginGroup = True
.Caption = "Hauteur Ligne..."
With .Controls.Add
.Style = msoButtonIconAndCaption
.Caption = "Ok1"
'Adapte le nom du module où est la macro
.OnAction = "Module7.MaMacro"
'Nom de la feuille et l'image où se retrouve l'image
'Feuil1 n'est pas le nom de l'onglet de la feuille
'mais la propriété Name
Feuil1.Shapes("MichD1").Copy
'Pour utiliser l'image d'un bouton existant
'.FaceId = 19
.PasteFace
End With
With .Controls.Add
.Style = msoButtonIconAndCaption
.Caption = "Ok2"
'Adapte le nom du module où est la macro
.OnAction = "Module7.MaMacro1"
Feuil1.Shapes("MichD2").Copy
'.FaceId = 27
.PasteFace
End With
End With
End With
End Sub
'-----------------------------------------
MichD
------------------------------------------
"Péhemme" a écrit dans le message de groupe de discussion :
4ed26069$0$2519$ba4acef3@reader.news.orange.fr...
Bonjour à Tous,
Je viens d'installer Office2010.
Je recopie dans le Personnal.xlsb une macro qui me permettait, à
l'ouverture
d'Excel2003, de créer un menu me donnant accès à, principalement, des
outils
de présentation de feuille.
Dans ce menu, j'avais des boutons avec icones personnalisées.
Au sein de cette macro de création de menu j'ai, entre autres à titre
d'exemple, l'opération suivante.
Set BtnPop = .Controls.Add(msoControlPopup)
With BtnPop
.BeginGroup = True
.Caption = "Hauteur Ligne..."
Set Btn = .Controls.Add(msoControlButton)
Worksheets("Feuil1").Shapes("Image 1").Copy 'Copie l'icone
personnalisée
With Btn
.BeginGroup = True
.Style = msoButtonIconAndCaption
.Caption = "Hauteur : 5"
.OnAction = "Hauteur_5"
.PasteFace
End With
Set Btn = .Controls.Add(msoControlButton)
Worksheets("Feuil1").Shapes("Image 2").Copy 'Copie l'icone
personnalisée
With Btn
.Style = msoButtonIconAndCaption
.Caption = "Hauteur : 16"
.OnAction = "Hauteur_16"
.PasteFace
End With
End With
L'opération de copie de l'image (.PasteFace) bloque sous Excel2010.
Je n'ai pas trouvé (ou pas su trouver) dans l'aide les codes de
remplacement.
Qu'est-ce que je fais de mal ?
Par quoi cette instruction doit-elle être remplacée ?
Toutes solutions et/ou mises sur la voie seront appréciées.
Bien cordialement
Michel
Pardon Denis, de revenir si tardivement. J'étais sans ordi depuis le début de la semaine. Le service informatique devait me le paramétrer des VPN et autres joyeusetés pour mon séjour au Niger. J'ai récupérer mon ordi ; je pars demain matin. Je reviens donc vers toi dès que je suis connecté (ce qui, semble-t-il n'est pas gagné). Je comprends cependant que par le biais des commandbars cela devrait "le faire" facilement. Il faut donc que j'adapte mon "Menu Perso". Laisse-moi le temps d'arriver, je teste et te tiens informé. Merci pour tes aides toujours appréciées. Bien amicalement Michel
"MichD" a écrit dans le message de news:jau6dn$cep$
Bonjour,
Voici un exemple, tu devras adapter le nom des objets...
Ça fonctionne très bien!
'----------------------------------------- Sub test()
On Error Resume Next Application.CommandBars("MichD").Delete Application.CommandBars.Add "MichD"
With Application.CommandBars("MichD") .Visible = True With .Controls.Add(msoControlPopup) .BeginGroup = True .Caption = "Hauteur Ligne..." With .Controls.Add .Style = msoButtonIconAndCaption .Caption = "Ok1" 'Adapte le nom du module où est la macro .OnAction = "Module7.MaMacro" 'Nom de la feuille et l'image où se retrouve l'image 'Feuil1 n'est pas le nom de l'onglet de la feuille 'mais la propriété Name Feuil1.Shapes("MichD1").Copy 'Pour utiliser l'image d'un bouton existant '.FaceId = 19 .PasteFace End With With .Controls.Add .Style = msoButtonIconAndCaption .Caption = "Ok2" 'Adapte le nom du module où est la macro .OnAction = "Module7.MaMacro1" Feuil1.Shapes("MichD2").Copy '.FaceId = 27 .PasteFace End With End With End With
End Sub '-----------------------------------------
MichD ------------------------------------------ "Péhemme" a écrit dans le message de groupe de discussion : 4ed26069$0$2519$
Bonjour à Tous,
Je viens d'installer Office2010. Je recopie dans le Personnal.xlsb une macro qui me permettait, à l'ouverture d'Excel2003, de créer un menu me donnant accès à, principalement, des outils de présentation de feuille. Dans ce menu, j'avais des boutons avec icones personnalisées. Au sein de cette macro de création de menu j'ai, entre autres à titre d'exemple, l'opération suivante.
Set BtnPop = .Controls.Add(msoControlPopup) With BtnPop .BeginGroup = True .Caption = "Hauteur Ligne..." Set Btn = .Controls.Add(msoControlButton) Worksheets("Feuil1").Shapes("Image 1").Copy 'Copie l'icone personnalisée With Btn .BeginGroup = True .Style = msoButtonIconAndCaption .Caption = "Hauteur : 5" .OnAction = "Hauteur_5" .PasteFace End With Set Btn = .Controls.Add(msoControlButton) Worksheets("Feuil1").Shapes("Image 2").Copy 'Copie l'icone personnalisée With Btn .Style = msoButtonIconAndCaption .Caption = "Hauteur : 16" .OnAction = "Hauteur_16" .PasteFace End With End With
L'opération de copie de l'image (.PasteFace) bloque sous Excel2010. Je n'ai pas trouvé (ou pas su trouver) dans l'aide les codes de remplacement. Qu'est-ce que je fais de mal ? Par quoi cette instruction doit-elle être remplacée ?
Toutes solutions et/ou mises sur la voie seront appréciées. Bien cordialement Michel