Sub CHCKB_Add()
Dim k As String, Ctrl As MSForms.CheckBox, Position As Range, X As OLEObject, i As Integer
k = Application.InputBox("Saisir un nombre", "Nombre de Controle", , , , , , 1)
If Val(k) = 0 Or k = "" Then Exit Sub
Application.ScreenUpdating = False
Columns(2).Clear
For Each X In ActiveSheet.OLEObjects
If Left(X.Name, 5) = "Check" Then X.Delete
Next
Set Position = Range("A1")
For i = 1 To k
Position.EntireRow.RowHeight = 15.5
Set Ctrl = ActiveSheet.OLEObjects.Add(ClassType:="Forms.CheckBox.1", _
Left:=Position.Left, Top:=Position.Top, Width:=Position.Width, Height:=Position.Height).Object
With Ctrl
.Caption = "ChckBx" & i
.LinkedCell = Cells(i, 2).Address
.Value = False
End With
Set Position = Position.Offset(1)
Next i
Application.ScreenUpdating = True
End Sub