RESOLU - Création/suppression "Button"

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Bonjour à toutes et à tous,

Encore besoin de votre écoute ....

Voici mon souci :
J'ai créé une macro pour une action. Cette macro me créé un "button" qui est (ou qui devrait LOL) être détruit en fin d'action et continuellement à chaque action.

Ceci pour éviter que les utilisateurs de mon classeur "me fassent des bêtises".

Le problème est qu'à chaque création, le numéro du "button" change et je ne peux donc pas le détruire.

Voici les 2 macros
Création
Code:
ActiveSheet.Buttons.Add(598.5, 918.75, 115.5, 72.75).Select
    Selection.OnAction = "EnrRDV"
    Selection.Characters.Text = "3 oui = TRANSFEREZ VOTRE RENDEZ-VOUS"
    With Selection.Characters(Start:=1, Length:=36).Font
        .Name = "Arial Black"
        .FontStyle = "Normal"
        .Size = 10
        .Strikethrough = False
        .Superscript = False
        .Subscript = False
        .OutlineFont = False
        .Shadow = False
        .Underline = xlUnderlineStyleNone
        .ColorIndex = 51
    End With

Destruction
Code:
ActiveSheet.Shapes.Range(Array("Button 44")).Select
    Selection.delete
    Selection.Cut

ou
Code:
ActiveSheet.Shapes.Range(Array("Button 45")).Select
    Selection.delete
    Selection.Cut
etc ..

Est-il possible qu'a la création que la macro affecte un numéro qui soit celui du "button" créé afin que la seconde macro puisse le détruire ?

En espérant que j'ai été clair dans mon petit exposé, je joins un classeur test.

Avec mes remerciements, je vous souhaite une très bonne journée,
Amicalement,
Lionel,
 

Pièces jointes

Dernière édition:
Re : Création/suppression "Button"

Bonjour, arthour973, le Forum,

Peut-être ainsi... pour la création :

Code:
Option Explicit
Sub Bouton_insérer()
    ActiveSheet.Buttons.Add(598.5, 218.75, 115.5, 72.75).Select
    With Selection
        .OnAction = "EnrRDV"
        .Characters.Text = "3 oui = TRANSFEREZ VOTRE RENDEZ-VOUS"
        .Name = "toto"
        .OnAction = "EnrRDV"
        With Selection.Characters(Start:=1, Length:=36).Font
            .Name = "Arial Black"
            .FontStyle = "Normal"
            .Size = 10
            .ColorIndex = 51
        End With
    End With
    With Range("G18"): .Select: .Value = "maintenant il faut le détruire": End With
End Sub

... puis, pour la suppression :

Code:
Sub Bouton_supprimer()
    ActiveSheet.Shapes("toto").Delete
End Sub

A bientôt 🙂
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
2
Affichages
856
Retour