Excel VBA:配列を関数に引数で渡す方法|コードと実行シート

配列を引数として、他の関数(プロシージャ)に渡す方法を解説しています。



Homeに戻る > Excel プログラムのTipsへ

複数の関数(プロシージャ)で1つの配列を使用したい場合、引数として配列全体を渡す場合の方法です。

「配列渡し」と呼ばれます。

方法は添字なしで渡します。

添字とは配列の要素のことで、添字なしとは配列名のみのことです。

ここではコマンドボタンクリックイベント内で配列を宣言し初期化、それを別のプロシージャに渡すVBAを掲載しています。

関連する記事の「Excel VBA:配列の使い方」を掲載していますので参照してください。



配列を関数に引数で渡すVBA

VBAの解説

・コマンドボタン クリックイベント
  1. 配列「list」を宣言します。
  2. 配列の全要素にデータを代入し初期化します。
  3. 別のプロシージャ「ExGetName」に配列を渡します。
    この場合、添字なしで配列名だけになっています。
・ExGetNameプロシージャ
  1. こちらも、引数は添字なしで配列名だけになっています。
  2. 引数として渡された配列が問題ないかをチェックするため、配列の各要素の値をセルに表示します。

Excel VBA シートコード

Option Explicit

'配列は要素なしで宣言します。
Private Sub ExGetName(Ary)
    '配列内容の表示
    Range("B7") = Ary(0)
    Range("B8") = Ary(1)
    Range("B9") = Ary(2)
End Sub


Private Sub CommandButton1_Click()
    Dim list(2) As String
    
    '配列を初期化
    list(0) = "大学"
    list(1) = "専門学校"
    list(2) = "就職"
    '配列を渡す
    ExGetName list
End Sub


Excel実行結果

配列の内容が、ExGetName関数内で表示されています。

これで問題なく配列が引数で渡されたことが分かります。


Homeに戻る > Excel プログラムのTipsへ

■■■
このサイトの内容を利用して発生した、いかなる問題にも一切責任は負いませんのでご了承下さい
■■■
当ホームページに掲載されているあらゆる内容の無許可転載・転用を禁止します


Copyright (c) Excel-Excel ! All rights reserved