title: Access to ActiveX checkbox value with name of checkbox as String
body: <p>I have an Excel worksheet with multiple ActiveX checkboxes. Their names are "CheckBox1", "CheckBox2", "CheckBox3" etc. If I refer to them as variables, for example:</p>
  
  <pre><code>If CheckBox1 = True Then
  MsgBox "OK"
  EndIf
  </code></pre>
  
  <p>everything works fine.</p>
  
  <p>I want to load to array values of all my checkboxes with a <code>For</code> loop, so I have to reference to their names as String, to create consecutive names. I have tried several solutions, such as:</p>
  
  <pre><code>Dim CheckBox As Shape
  Set CheckBox = ActiveSheet.Shapes("CheckBox1")
  If CheckBox.OLEFormat.Object.Value = 1 Then
  MsgBox "OK"
  End If
  </code></pre>
  
  <p>Showing "Run-time error '438': Object doesn't support this property or method"</p>
  
  <pre><code>If ActiveSheet.CheckBoxes("CheckBox1").Checked = False Then
  MsgBox "OK"
  End If
  </code></pre>
  
  <p>Showing "Run-time error '1004': Taking properties of CheckBoxes class Worksheet is imossibble'</p>
  
  <pre><code>If ActiveSheet.Shapes("CheckBox1").Value = xlOn Then
  MsgBox "OK"
  End If
  </code></pre>
  
  <p>Showing "Run-time error '438': Object doesn't support this property or method"</p>
  
  <p>As in subject, how can I refer to ActixeX checkbox value with String as name? Is it possible?</p>