Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


57399 / 76732 ←次へ | 前へ→

【24070】Re:2次配列の拡大
発言  ichinose  - 05/4/11(月) 18:51 -

引用なし
パスワード
   ささ さん、ウッシ さん、こんばんは。

Redim Preserve 〜は、この場合使用できませんね!!
単純に大きい配列を用意してみては?
'=============================================
Sub test()
  ReDim a(2, 30)
  For idx = 0 To 2
   For jdx = 0 To 30
    a(idx, jdx) = idx + jdx
    Next
   Next
  Range(Cells(1, 1), Cells(UBound(a(), 1) + 1, UBound(a(), 2) + 1)).Value = a()
  MsgBox "ok"
  a() = special_redim(a(), 6, 30)
  MsgBox LBound(a(), 1) & ":::" & UBound(a(), 1)
  MsgBox LBound(a(), 2) & ":::" & UBound(a(), 2)
  Cells.ClearContents
  Range(Cells(1, 1), Cells(UBound(a(), 1) + 1, UBound(a(), 2) + 1)).Value = a()
End Sub
'==================================================================
Function special_redim(myarray(), x, y)
'但し、x>=ubound(myarray(),1) ,y>=ubound(myarray(),2)
  ReDim wk(LBound(myarray(), 1) To x, LBound(myarray(), 2) To y) As Variant
  For idx = LBound(myarray(), 1) To UBound(myarray(), 1)
   For jdx = LBound(myarray(), 2) To UBound(myarray(), 2)
    wk(idx, jdx) = myarray(idx, jdx)
    Next jdx
   Next idx
  special_redim = wk()
End Function

1 hits

【24067】2次配列の拡大 ささ 05/4/11(月) 16:39 質問
【24068】Re:2次配列の拡大 ウッシ 05/4/11(月) 16:50 回答
【24069】Re:2次配列の拡大 ささ 05/4/11(月) 17:10 質問
【24070】Re:2次配列の拡大 ichinose 05/4/11(月) 18:51 発言
【24071】Re:2次配列の拡大 ni 05/4/11(月) 18:54 発言
【24083】Re:2次配列の拡大 ささ 05/4/12(火) 9:14 お礼

57399 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free