title: ReDim Preserve from 1-dimensional to 2-dimensional
body: <p>I have a one-dimensional array:</p>
  
  <pre><code>Dim array1() As Variant
  array1 = Array("A", "B", "C", "D")
  </code></pre>
  
  <p>conceptually looking like this:</p>
  
  <pre><code>A
  B
  C
  D
  </code></pre>
  
  <p>I would like to add a second dimension to this array, keeping the original data.  I want to add two "columns" to this array to store data.</p>
  
  <pre><code>Dim lngArrayLength as Long
  lngArrayLength = UBound(array1, 1)
  
  ' Zero-indexed, so now should have 3 columns
  ReDim Preserve array1(lngArrayLength, 2)
  </code></pre>
  
  <p>Resulting in this:</p>
  
  <pre><code>A    NULL    NULL
  B    NULL    NULL
  C    NULL    NULL
  D    NULL    NULL
  </code></pre>
  
  <p>Problem is that my ReDim Preserve command throws a Run-time error: '9': Subscript out of range error. I can't figure out why.</p>