Bueno, ya he conseguido dar con la colección de objetos. Este código funciona:
Código:
Dim Ctrl As Object
Dim F As Integer
For F = 1 To 23
For Each Ctrl In Worksheets(2).OLEObjects
If Ctrl.Name = "CheckBox" & F Then
MsgBox Ctrl.Name
Exit For
End If
Next Ctrl
Next F
Como hay 23 Checkbox, me enseña 23 veces un mensaje dándome el nombre del checkbox que en cada iteración adopta la variable Ctrl. Perfecto.
Pero cuando cambio el MsgBox por el cambio de valor:
Código:
Dim Ctrl As Object
Dim F As Integer
For F = 1 To 23
For Each Ctrl In Worksheets(2).OLEObjects
If Ctrl.Name = "CheckBox" & F Then
Ctrl.Value = True
Exit For
End If
Next Ctrl
Next F
entonces no va.
Sin embargo sí funciona una instrucción suelta:
Me dice: El objeto no admite esta propiedad o método
Se ve que los objetos ActiveX de la colección OLEObjects no admiten la propiedad Value.
¡Vaya mieeeeelllllllda!