Créer un bouton sur plusieurs feuilles Le sujet est résolu

Y compris Power BI, Power Query et toute autre question en lien avec Excel
Répondre
Z
Zayx
Membre fidèle
Membre fidèle
Messages : 377
Appréciation reçue : 1
Inscrit le : 8 octobre 2013
Version d'Excel : 2010 FR

Message par Zayx » 17 janvier 2015, 18:37

Bonsoir le forum!

Voici un fichier test:
test.xlsm
(286.53 Kio) Téléchargé 88 fois
Donc comme indiquer dans le titre, j'aimerai créer un bouton sur plusieurs feuilles ou plutôt copier ce bouton (déjà créé dans le fichier test) sur toutes les autres feuilles (dans le fichier test il y a seulement 4 autres feuilles mais moi j'en ai plus de 700...). Que ce bouton soit également au même endroit que sur la feuille ou il est et que la macro qui est lié à ce bouton le soit aussi sur les boutons copiés sur les autres feuilles.

Voilou voilou! J'espère obtenir de l'aide et sur ce à très vite! :)
Avatar du membre
Yvouille
Passionné d'Excel
Passionné d'Excel
Messages : 9'104
Appréciations reçues : 87
Inscrit le : 6 avril 2007
Version d'Excel : 2016

Message par Yvouille » 17 janvier 2015, 21:10

Salut,

Le code suivant devrait faire l'affaire. Je l'ai placé dans le fichier ci-joint, relié au 'Bouton 1'.

Ce code un peu bricolé fera très certainement bondir les puristes :?

Cordialement.
Option Explicit
Sub Macro2()
Dim i As Integer

Application.ScreenUpdating = False
Application.EnableEvents = False

Sheets(".hack - Sign").Select
Sheets(".hack - Sign").Shapes.Range(Array("BtnFiltre")).Select
Selection.Copy

For i = 1 To Sheets.Count
    If Sheets(i).Name <> ".hack - Sign" Then
        Sheets(i).Select
        Range("C23").Select
        ActiveSheet.Paste
        Selection.ShapeRange.IncrementLeft 12.187480315
        Selection.ShapeRange.IncrementTop 10.312519685
        ActiveSheet.Shapes.Range(Array("BtnFiltre")).Select
        Selection.OnAction = "insere_image_ratio"
        ActiveSheet.Range("A1").Select
    End If
Next i

Sheets(".hack - Sign").Select
ActiveSheet.Range("A1").Select

Application.EnableEvents = True
    
End Sub
test_V1.xlsm
(258 Kio) Téléchargé 178 fois
Yvouille

Valais de Coeur
Z
Zayx
Membre fidèle
Membre fidèle
Messages : 377
Appréciation reçue : 1
Inscrit le : 8 octobre 2013
Version d'Excel : 2010 FR

Message par Zayx » 18 janvier 2015, 17:37

La macro correspondrait mais le bouton ne se créer pas exactement au même endroit que le bouton que j'ai mis dans mon fichier test sur les autres feuille. Comment faire pour récupérer la position de mon bouton actuel pour modifier ta macro pour que les autres se créer au bon endroit? :)
Avatar du membre
Yvouille
Passionné d'Excel
Passionné d'Excel
Messages : 9'104
Appréciations reçues : 87
Inscrit le : 6 avril 2007
Version d'Excel : 2016

Message par Yvouille » 18 janvier 2015, 21:42

BONJOUR à toi aussi

MERCI à toi aussi d’avoir posé ta question

Pour rappel, la charte de notre Forum, point 5 Charte du Forum

J’ai pris pour base de ma macro une macro enregistrée par l’enregistreur de macro (si c’est phrase ne sera pas citée comme exemple à la Sorbonne, elle a au moins l’avantage de dire ce qu’elle veut dire).

Lors de mon enregistrement, j’ai copié ton bouton de la feuille ‘.hack – Sign’ et je l’ai collé plus ou moins à la même hauteur que l’original. Comme ce n’était pas tout à fait ça, je l’ai déplacé un peu. Ca a créé les lignes de code ci-dessous :
        Selection.ShapeRange.IncrementLeft 12.187480315
        Selection.ShapeRange.IncrementTop 10.312519685

En modifiant ces valeurs, tu n’arrives pas à placer les boutons collés où ça te convient ?

Sinon il faudrait que tu me dises dans quelle cellule ils devraient être placés et j’essaierai de trouver un code en conséquence.

A te relire
Yvouille

Valais de Coeur
Z
Zayx
Membre fidèle
Membre fidèle
Messages : 377
Appréciation reçue : 1
Inscrit le : 8 octobre 2013
Version d'Excel : 2010 FR

Message par Zayx » 19 janvier 2015, 12:01

Bonjour, merci, bonjour, merci :D

Je pensais t'avoir répondu le jour même mais en fait y'avais une journée de décalage d'ou le fait que je n'ai pas dis bonjour et le merci bin j'ai pour habitude de remercie à la fin (normal quoi :S ) mais bréfons.

J'ai plus ou moins réussi à le faire apparaitre à l'endroit voulu en modifiant les valeur Left et Top.
Le problème et donc résolu grâce à ton aide, je garde la macro de côté au cas ou j'ai autre chose à faire qui s'en approche!

Merci et bonne journée à toi!
1 membre du forum aime ce message.
Répondre
  • Sujets similaires
    Réponses
    Vues
    Dernier message