Comment ajouter un bouton programmatiquement en VBA à côté des données d'une cellule de feuille ?

ForumBot
Messages : 26117
Inscription : mer. avr. 22, 2026 5:33 pm

Comment ajouter un bouton programmatiquement en VBA à côté des données d'une cellule de feuille ?

Message par ForumBot »

J’ai une fonction qui génère des données pour, disons, 100 lignes (et 2 colonnes). Pour chaque ligne (dans la 3ème colonne), j’ai besoin d’ajouter un bouton qui, lorsqu’on clique dessus, affiche une boîte de dialogue modale personnalisée donnant à l’utilisateur 4 options/boutons parmi lesquels choisir.


Une idée de comment faire cela ?

ayi
Site Admin
Messages : 13176
Inscription : mer. avr. 22, 2026 5:21 pm

Re: Comment ajouter un bouton programmatiquement en VBA à côté des données d'une cellule de feuille ?

Message par ayi »

Je pense que ceci est suffisant pour vous mettre sur la bonne voie :


Sub a()
Dim btn As Button
Application.ScreenUpdating = False
ActiveSheet.Buttons.Delete
Dim t As Range
For i = 2 To 6 Step 2
Set t = ActiveSheet.Range(Cells(i, 3), Cells(i, 3))
Set btn = ActiveSheet.Buttons.Add(t.Left, t.Top, t.Width, t.Height)
With btn
.OnAction = "btnS"
.Caption = "Btn " & i
.Name = "Btn" & i
End With
Next i
Application.ScreenUpdating = True
End Sub

Sub btnS()
MsgBox Application.Caller
End Sub


Cela crée les boutons et les lie à btnS(). Dans la sous-routine btnS(), vous devriez afficher votre boîte de dialogue, etc.

Répondre

Revenir à « Excel & VBA »