[VBA Excel] Associer N macros à N boutons suite à un événement
Bonjour à tous,
Je souhaiterais avoir quelques conseils sur un problème :
En réponse à un événement quelconque, par exemple un clic bouton, je veux créér N boutons ("Bouton1" ... "BoutonN") et leur associer N macros ("Bouton1_click" ... "BoutonN_click")
Sur ma feuille excel, existent deux boutons, le premier déclenche la macro Evenement_click et le second Bouton0, est un CommandButton.
L'idée est de recopier ce Bouton0 existant, de changer son nom et de créer sa macro associée dans le code.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
|
Sub Evenement_click()
Dim WbClasseur As Workbook
'Marqueur d'affichage
Dim IntLigneCourante As Integer
'--------------------------------------------------
IntLigneCourante = 10
N = 2
Set WbClasseur = Workbooks("Classeur.xls")
For i = 1 To N
'****** BLOC1 ******
'Gestion des boutons
Worksheets("Sheet1").Shapes("Bouton0").Select
Selection.Copy
Worksheets("Sheet1").Range("F" & IntLigneCourante).Select
Worksheets("Sheet1").Paste
Selection.Name = "Bouton" & i
Worksheets("Sheet1").Range("F18").Select
IntLigneCourante = IntLigneCourante + 1
'******************
'****** BLOC2 ******
'Gestion des macros associées
With WbClasseur.VBProject.VBComponents("Feuil1").CodeModule
x = .CountOfLines
.InsertLines x + 1, "Sub Bouton" & i & "_Click()"
.InsertLines x + 2, " "
.InsertLines x + 3, "End Sub"
End With
'******************
Next i
End Sub |
Les blocs BLOC1 et BLOC2 fonctionnent parfaitement indépendemment l'un de l'autre, mais dès qu'ils sont activés ensemble, excel plante sans message d'erreur. J'avoue avoir du mal à comprendre la logique.
Par avance, merci de votre aide.
Vorillyan