Sub AjouterLesBoutons()
Application.ScreenUpdating = False
Dim i As Integer
For i = 3 To Range("B65536").End(xlUp).Row
Dim Ws As Worksheet
Dim Obj As OLEObject
Dim laMacro As String
Dim x As Integer
Set Ws = Sheets(Sheets.Count)
Set Obj = Ws.OLEObjects.Add("Forms.CommandButton.1")
With Obj
.Left = "154,5"
.Top = "12,75" * (i - 1) + "0,75"
.Width = "60,75"
.Height = "12,75"
.Object.Caption = ""
End With
laMacro = "Private Sub CommandButton" & i - 1 & "_Click()" & vbCrLf & vbCrLf
laMacro = laMacro & "Dim Valeur as String" & vbCrLf
laMacro = laMacro & "Valeur = Cells(" & i & ", 2).Value" & vbCrLf
laMacro = laMacro & "MsgBox Valeur" & vbCrLf & vbCrLf
laMacro = laMacro & "End Sub"
With ThisWorkbook.VBProject.VBComponents(ActiveSheet.CodeName).CodeModule
x = .CountOfLines + 1
.InsertLines x, laMacro
End With
Cells(i, 9).FormulaR1C1 = "ok"
Next i
End Sub