プロが教えるわが家の防犯対策術!

ReDim Preserve aStrSKU(x, 2)
aStrSKU(x, 0) = strPre
aStrSKU(x, 1) = サブ2
aStrSKU(x, 2) = サブ3

x = x + 1

上記のソースをDo Untilでまわしているのですが、
2週目以降にxに1を足して行数だけ増やしたいのですが、
2週目でエラーが発生します。
行数だけ要素数を増やす方法はありますか?

A 回答 (3件)

こんな感じで



Structure column
Dim col1 As String
Dim col2 As String
Dim col3 As String
End Structure

Private Sub test()

Dim aStrSKU() As column
Dim x As Integer

Do Until x = 3
ReDim Preserve aStrSKU(x)
aStrSKU(x).col1 = "strPre"
aStrSKU(x).col2 = "サブ2"
aStrSKU(x).col3 = "サブ3"

x = x + 1
Loop

End Sub
    • good
    • 2
この回答へのお礼

ありがとうございます。
参考になりました。

お礼日時:2010/03/30 14:43

はじめまして、通りすがるともうします。


上記ソースは、vb.netですか?
vb.netでしたら上記のような配列を操作したい場合には、2次元配列より
多段階配列を使用すると便利ですよ。
ちなみに、定義は以下のように定義します。

 dim aStrSku()() as string

詳細は、以下のurlを参照ください。

http://msdn.microsoft.com/ja-jp/library/dd314345 …
    • good
    • 0
この回答へのお礼

今回の処理には使いませんでしたが
後学の為になりました。

お礼日時:2010/03/30 14:45

変更させる場合は、



ReDim Preserve aStrSKU(2, x)

と後ろ側だけが出来るはずです。
⇒行・列の考えを逆にする必要が出てきます。
    • good
    • 0
この回答へのお礼

すみません。
上記の方法でエラーがでてしまいました。
違う方法で無事解決できました。
ありがとうござます。

お礼日時:2010/03/30 14:45

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A