Callでマクロ呼び出し引数あたえて実行するマクロ
を示す。
■Excel-VBA Callでマクロ呼び出し引数あたえて実行するマクロ
Sub sample28() Call sample27("A1", 6) End Sub Sub sample27(ByVal str As String, ByVal fld As Long) Range(str).AutoFilter Field:=fld, Criteria1:=Array( _ "六角ボルト15x10", "六角ボルト15x20", "六角ボルト15x25", _ "アルミカバーA", "アルミカバーB", "アルミカバーC"), _ End Sub※[2.] sample27を呼び出し。
引数「"A1"」と「6」をあたえる。
※[5.] 引数「str = "A1"」と「fld = 6」受け取る。
strは文字列(String)、fldは数値(Long)。
strは文字列(String)、fldは数値(Long)。
※[6.] strセル含むデータ群のfld列目をフィルタ抽出。
※[7.~8.] フィルタ抽出品目。
※[7.~8.] フィルタ抽出品目。
■マクロ実行対象
「部品データ_191128.xlsx」の「部品表」シート。6列目(F列)。■マクロ実行結果
sample28のマクロを実行すると、sample27を呼び出し
引数「str = "A1"」と「fld = 6」をあたえて実行する。
Range(A1)を含むデータ群の6列目(F列)で
「六角ボルト15x10」、「六角ボルト15x20」、
「六角ボルト15x25」、「アルミカバーA」、
「アルミカバーB」、「アルミカバーC」
をフィルタ抽出する。
■あとがき
今回はExcel VBAマクロ。Callでマクロ呼び出し引数あたえて実行するマクロ
を示した。
あたえる引数は変わるが
処理内容は変わらず、
処理を多用する場合に使う。
LibreOffice Basicで使う場合は
コードの先頭行に
「Option VBASupport 1」を記述する。
Option VBASupport 1
引数不要で単純に
Subプロシージャ呼び出し実行する場合は
Subプロシージャ名をコードに記述する。
【例】「Sub sample28()」の場合「sample28」。
■LibreOffice-VBA-別モジュールのSubプロシージャ呼び出し方法
過去記事参考。以上。