回答編集履歴
2
修正
    
        answer	
    CHANGED
    
    | 
         @@ -12,7 +12,7 @@ 
     | 
|
| 
       12 
12 
     | 
    
         
             
            ReDim Arr(UBound(rows), 1)
         
     | 
| 
       13 
13 
     | 
    
         | 
| 
       14 
14 
     | 
    
         
             
            i = 0
         
     | 
| 
       15 
     | 
    
         
            -
            For Each r In  
     | 
| 
      
 15 
     | 
    
         
            +
            For Each r In rows
         
     | 
| 
       16 
16 
     | 
    
         
             
                j = 0
         
     | 
| 
       17 
17 
     | 
    
         
             
                For Each c In Split(r, ",")
         
     | 
| 
       18 
18 
     | 
    
         
             
                    If j + 1 > UBound(Arr, 2) Then
         
     | 
1
修正
    
        answer	
    CHANGED
    
    | 
         @@ -1,6 +1,6 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            下記サイトに解説があるように、ReDimで要素数を変更できるのは、最後の要素に限られます。
         
     | 
| 
      
 1 
     | 
    
         
            +
            下記サイトに解説があるように、`ReDim Preserve`で要素数を変更できるのは、最後の要素に限られます。
         
     | 
| 
       2 
2 
     | 
    
         
             
            [http://www.vba-ie.net/programing/arrangement.html](http://www.vba-ie.net/programing/arrangement.html)
         
     | 
| 
       3 
     | 
    
         
            -
            つまり列数は動的に増やせますが、行数は増やせないということになります。
         
     | 
| 
      
 3 
     | 
    
         
            +
            つまりデータを維持したまま列数は動的に増やせますが、行数は増やせないということになります。
         
     | 
| 
       4 
4 
     | 
    
         | 
| 
       5 
5 
     | 
    
         
             
            というわけで先に行数を決めてしまい、列数のみ可変とすれば良いと思います。
         
     | 
| 
       6 
6 
     | 
    
         |