• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルマクロのサブルーチン引数で配列を使用したい)

エクセルマクロのサブルーチン引数で配列を使用する方法

このQ&Aのポイント
  • VBA初心者の方がエクセルのマクロでサブルーチンの引数を配列にしたい場合、どのようにすれば良いかをご質問されています。具体的な例として、配列の呼び出し方法や配列変数に配列数を記入する必要があるか、また配列数を修正する際にミスなく修正する方法についてのアドバイスをお求めです。
  • エクセルマクロでサブルーチンの引数に配列を使用する方法についてご質問をいただきました。VBA初心者の方に対して、配列の呼び出し方法や配列変数の宣言、配列数の変更方法についてのアドバイスをお伝えします。
  • エクセルのVBAマクロでサブルーチンの引数に配列を使用する方法についての質問です。具体的な例が示され、配列の呼び出し方法や配列変数の宣言の仕方、配列数の変更時の注意点などについてアドバイスを求めています。初心者の方にわかりやすく解説してください。

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

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

こんなのGoogleで「vba 配列 引数」で照会すれば、実例つき解説が沢山在る。 最初のものを少し修正して Sub PassArg() Dim i As Integer Dim MyArray(3) As String MyArray(0) = "東京" MyArray(1) = "大阪" MyArray(2) = "福岡" Call RecArg(MyArray) End Sub Sub RecArg(MyArg() As String) Dim j As Integer For j = 0 To UBound(MyArg) - 1 MsgBox MyArg(j) Next j End Sub で判りますか。 これなどでわからない場合、ピントハズレの場合は、ここに質問すると良い。

その他の回答 (1)

  • hana-hana3
  • ベストアンサー率31% (4940/15541)
回答No.1

そこまで書いて、なぜ試してみないのでしょうか? 受け取り側を修正するだけでエラーになりませんよ。 Sub Test(ByRef AA() As Integer) ------------------------------------------- Sub main() Dim AA(10) As Integer AA(2) = 10 AA(1) = 5 Call Test(AA) MsgBox AA(3) End Sub Sub Test(ByRef AA() As Integer) ' ← AA() AA(3) = AA(2) + AA(1) End Sub

関連するQ&A