Excel-VBA Callでマクロ呼び出し引数あたえて実行するマクロ

2019/12/10

プログラム

t f B! P L
Excel VBAマクロ。今回は
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)。
※[6.] strセル含むデータ群のfld列目をフィルタ抽出。
※[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プロシージャ呼び出し方法
過去記事参考。以上。

ブログ アーカイブ

ラベル

このブログを検索

スポンサーリンク

自己紹介

機械メーカー総合職正社員10年勤務後退職。 エクセルVBAプログラム歴 5年。 LibreOffice(無料)でVBAマクロ検証。
■Fortniteクエスト攻略動画■
■Twitter■
⇒詳細プロフィールを表示

QooQ