title: Excel VBA: How to add all of the current shapes on a worksheet to a ShapeRange?
body: <p>Somewhat of a VBA newbie here.</p>
  
  <p>It is clear to me how to create a <code>ShapeRange</code> using individual or multiple <code>Shape</code> objects:</p>
  
  <pre><code>Dim sht As Worksheet
  Set sht = MySht
  '
  '*Add some shapes*
  '
  Dim shprng As ShapeRange
  Set shprng = sht.Shapes.Range(Array(1,2,3))
  </code></pre>
  
  <p>Is there a way to add ALL of the currently existing shapes on a worksheet to <code>shprng</code>? In other words, is there a method to return a <code>ShapeRange</code> from a <code>Shapes</code> object...? Something like this:</p>
  
  <pre><code>Set shprng = sht.Shapes.Range.SelectAll '&lt;--- Does not work: Type Mismatch
  Set shprng = sht.Shapes                 '&lt;--- Same error
  Set shprng = sht.Shapes.Range           '&lt;--- Error: Argument not optional
  </code></pre>
  
  <p>Thanks!</p>