Conversion exécution macro de bouton à une forme

Bonjour à vous

Je demande encore une fois votre aide

J'ai créé un simple fichier où plusieurs boutons sont disponibles. Une fois cliqué, le VBA appelle les colonnes demandées

Donc lorsque Test 1 cliqueé, les colonnes sont affichées, celles de Test 2 disparaissent et ainsi de suite. Très basique

Là où réside mon problème, assigner la même fonctionnalité à une forme qui exécuterais la macro

Visuellement, les boutons font vieux jeu et ne cadrent pas avec la majorité des visuels que je créée

Je comprends que je dois avoir un module pour avoir mes macros et les assigner

ensuite, faire appel à sa procédure mais je bloque-là (Call XXXXXX)

merci encore une fois pour votre aide!

je vous joint cette fois-ci mon document

5fichiertest.xlsm (29.81 Ko)

Bonjour,

Je n'ai pas bien compris le fonctionnement de tes macros.

A toutes fins utiles, voici un exemple avec une seule et même macro affectée à tous les boutons de type shape. Ensuite la macro exploite le texte du bouton.

Sub test()
MsgBox ActiveSheet.Shapes(Application.Caller).TextFrame.Characters.Text
Sheets(ActiveSheet.Shapes(Application.Caller).TextFrame.Characters.Text).Select
End Sub
2boutons-bis.xlsm (18.11 Ko)

Pour faire appel à une autre macro, il suffit alors de créer une subroutine et de passer le paramètre.

Sub test()
    quelestlebouton ActiveSheet.Shapes(Application.Caller).TextFrame.Characters.Text
End Sub

Sub quelestlebouton(texte As String)
    Cells(1, 1) = texte
End Sub
2boutons-ter.xlsm (15.35 Ko)

Bonjour Steelson

En fait, je vais préciser ce que je voulais

À l'origine, le fichier que je désire retravailler a des catégories allant de la colonne A à la colonne M ou N (12 pour être exact)

et sous ces catégories, il y a des liens hypertextes en relation avec la catégorie

J'arrive donc dans le champ visuel maximal de mon écran. Dès que je vais ajouter une nouvelle catégorie, elle tombera alors hors-champ et je devrai naviguer vers la droite pour aller la chercher

Dans le fichier d'exemple que j'ai fourni, j'ai repensé le fichier et au lieu de me déplacer vers la droite pour retrouver la catégorie que je cherche, le bouton Test1 appelle à afficher les colonnes I à L (donc, les liens hypertexte spécifiques à cette catégorie) et masquer les autres qui pourraient y être déjà affichées

Même chose pour Test2, cela appelle à afficher seulement les colonnes M à O et à masquer les Colonnes I à L si elles sont affichées

C'est comme ouvrir un tiroir.

Ça limite de beaucoup mes déplacements vers la droite du fichier car les colonnes sont appelées à être affichées dans le visuel principal à la place

maitnenant, vu la laideur des boutons, je désire passer au même système mais avec une forme (qui est visuellement mieux côté apparence). je cherche donc comment formuler le tout pour être en mesure d'assigner cette macro à la forme

J'ai créé un nouveau module

inscrit:

Sub test1 ()

call TBTest1

End sub

ensuite, même si je copie mon code VBA dans le module, je reçois toujours une erreur

j'espère être plus clair cette fois-ci

merci encore!

Une seule macro ...

Sub Executer()
Application.ScreenUpdating = False
    With ActiveSheet.Shapes(Application.Caller)
        ActiveSheet.Columns("I:P").Hidden = False
        Select Case .Name
            Case "_bt2"
                ActiveSheet.Columns("I:L").Hidden = True
            Case "_bt1"
                ActiveSheet.Columns("M:P").Hidden = True
        End Select
    End With
Application.ScreenUpdating = True
End Sub
2fichiertest.xlsm (24.14 Ko)

Bonsoir,

En fait, tu veux juste pouvoir te déplacer plus facilement vers la droite, de ce que j'ai cru comprendre ?

SI tel est le cas, pourquoi ne pas juste mettre un petit code qui scroll à droite d'un nombre défini de colonnes ? Et tu lui attribues un raccourci clavier.

Bonjour à tous

le fichier est maintenant fonctionnel tel que je le désire

merci de votre aide!

**JoyeuxNoel, merci quand même pour ton idée, elle pourrait être utile dans un autre projet

Rechercher des sujets similaires à "conversion execution macro bouton forme"