|    | 
     こんにちは。 
ちょっと調べたところ 
「Preserve を指定した場合、変更できるのは、 
動的配列の最後の次元のサイズに限られます。 
また、次元数は変更できません。」 
とあったので、 
ループの前にPreserveなしでredimして 
myDATA(iCount, 1 To 30)を 
myDATA(1 To 30, iCount) 
という形でいいなら動くと思います。 
 
試しに↓の様にしたら動きました。 
Sub tamesi() 
  Dim i As Integer 
  Dim test() As String 
  ReDim test(1 To 30, 0) 
  For i = 0 To 100 
    ReDim Preserve test(1 To 30, i) 
    test(1, i) = "a" & i 
  Next i 
End Sub 
 
 
▼タロロ さん: 
>動的な二次配列を宣言したいのですが、 
>ループの二回目でエラーになってしまいます。 
>どのようにすればよいのでしょうか? 
>宜しくお願い致します。 
>Do Until rs.EOF 
> 
> iCount = iCount + 1 
> 
> ReDim Preserve myDATA(iCount, 1 To 30) 
> myDATA(iCount, 1) = 社員ID 
> myDATA(iCount, 2) = 名前 
>        : 
> rs.MoveNext 
>Loop 
 | 
     
    
   |