Problème de création de boutons grâce a du code VBA
Bonjour à tous,
Voila j'ai un problème, je suis en train de créer une "appli" grâce à vba. L'idée c'est qu'on remplit un userform, les infos sont rentrés dans une feuille excel.
Mais je veux ajouter à chaque fois un bouton modifier et un autre supprimer à la fin de la ligne. Commençons par modifier. L'idée là c'est que le bouton récupère les infos dans le même userform comme ça on modifie.
Seulement pour la première ligne pas de soucis le bouton est créé mais la deuxième j'ai une erreur :
Citation:
bibliothèque d'objets incorrecte ou contenant des références à des définitions d'objets introuvables
voici mon 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
|
Dim Obj As Object
Dim Code As String
Sheets("Feuil3").Select
Cells(x, 8).Select
a = Rows(ActiveCell.Row).Top
b = Columns(ActiveCell.Column).Left
t = t + 1
'crée le bouton
Set Obj = ActiveSheet.OLEObjects.Add(ClassType:="Forms.CommandButton.1", _
Link:=False, DisplayAsIcon:=False, Left:=b, Top:=a, Width:=66, Height:=20)
Obj.Name = "Modif" & x
'texte du bouton
ActiveSheet.OLEObjects(1).Object.Caption = "Modifier"
ActiveSheet.OLEObjects(1).Object.Font.Size = 8
'Le texte de la macro
Code = "Sub Modif" & x & "()" & vbCrLf
Code = Code & "Call Tester" & vbCrLf
Code = Code & "End Sub"
'Ajoute la macro en fin de module feuille
With ActiveWorkbook.VBProject.VBComponents(ActiveSheet.Name).CodeModule
.insertlines .CountOfLines + 1, Code
End With |
Alors je pense que le problème viens du
Citation:
ActiveSheet.OLEObjects(1)
parce que fut un temps ou j'avais pas d'erreur mais les propriétés du bouton n’était appliqué que sur le premier.
J'avais alors essayé de mettre un compteur t à la place du 1.
En passant j'ai trouvé ce code sur internet, surement sur ce forum d’ailleurs et je ne comprend pas tout donc si vous pouvez m'apporter quelques explications, je suis pas contre..
Infos : le x est un compteur qui correspond au numéro de la ligne
Merci beaucoup d'avance
Baldo