As long as you aren't using column 'A' for anything other than the checkboxes, change your code as below. Use the new sub to clear them.
Sub Addcheckboxes()
Dim Cell As Long, LRow As Single
Dim chkbx As CheckBox
Dim MyLeft, MyTop, MyHeight, MyWidth As Double
Application.ScreenUpdating = False
LRow = ActiveSheet.Range("B" & Rows.Count).End(xlUp).Row
For Cell = 2 To LRow
If Cells(Cell, "B").Value <> "" Then
MyLeft = Cells(Cell, "A").Left
MyTop = Cells(Cell, "A").Top
MyHeight = Cells(Cell, "A").Height
MyWidth = Cells(Cell, "A").Width
Set chkbx = ActiveSheet.CheckBoxes.Add(MyLeft, MyTop, MyWidth, MyHeight)
' Makes the font invisible, so TRUE FALSE isn't displayed
Cells(Cell, "A").NumberFormat = ";;;"
With chkbx
.Caption = ""
.Value = xlOff
.Display3DShading = False
.LinkedCell = "$A$" & Cell 'Links the checkbox to the cell it occupies
End With
End If
Next Cell
Application.ScreenUpdating = True
End Sub
Sub ClearCheckboxes()
Range("A2:A" & ActiveSheet.Range("A" & Rows.Count).End(xlUp).Row).ClearContents
End Sub
Bookmarks