• ベストアンサー

配列をプロシージャの変数としたい

ExcelVBAです。 Sub Test(ByRef i as Long , BuVal j as Long) のように、SUBプロシージャのカッコ内に変数をおき、他のプロシージャから呼び出して使うような場合についてですが、その変数を配列にしたいのですが、書き方が分かりません。 Sub Test(ByRef MyArray()) というようにしたらできるかと思ったのですが、できません。 よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

Sub Test(ByRef MyArray()) ではなく Sub Test(ByRef MyArray() as Long) としてみてはどうですか? 型が宣言されてないのでエラーになるのではないかと思うのですが… (VBAじゃ確認してませんが、VB.Netではこの方法で書けます)

takaandhiro
質問者

お礼

できました。 間抜けな質問にお手数おかけしました。 ありがとうございました。

すると、全ての回答が全文表示されます。

その他の回答 (1)

回答No.2

Sub Test(ByRef i as Long , BuVal j as Long)のように、配列でもLongなどの型を書かなくてはいけないです。 例えば、Dim MyArray(10) As Stringだったら、 Sub Test(ByRef MyArray() As String)となります。 がんばってください。

takaandhiro
質問者

お礼

ありがとうございました。

すると、全ての回答が全文表示されます。

関連するQ&A