1. Code in Module1
Option Explicit
Sub check_click()
Dim shp As Shape
Set shp = ActiveSheet.Shapes(Application.Caller)
With shp.TextFrame2.TextRange.Characters
.Text = IIf(.Text = "a", "", "a")
.Font.Name = "Webdings"
.Font.Size = 12
shp.Parent.Range("J" & shp.TopLeftCell.Row).Value = (.Text = "a")
End With
End Sub
Sub AssignMacro()
Dim i As Long, shp As Shape
For Each shp In Worksheets("Sheet1").Shapes
If shp.TopLeftCell.Column = 11 Then shp.OnAction = "check_click" ' in case there are other shapes on the sheet
Next shp
End Sub
2. Code in ThisWorkbook
Option Explicit
Private Sub Workbook_Open()
AssignMacro ' in case you add new rectangles to column K again
End Sub
3. Save file -> Close file -> reopen file
Bookmarks