ExcelVBA 関数|引数を利用し呼び出しで同じ処理を繰り返しする方法

 

ExcelVBA  関数を使うことで、同じ処理を繰り返し使えるようになり、コードの見やすさ・保守性が向上します。また、引数を利用することで柔軟に動作を変更可能です。 使い方や注意点など、サンプルコードをもとに具体的に解説します。

 

2025年の目標は繰り返し作業に悩まされない年にしませんか? Excel VBAを活用した効率化がその第一歩
本サイト参考:Excel VBAで自動化するコードのベースを習得したい方におすすめの記事

 

Excel VBA 関数|引数を利用し呼び出しの利用シーン

以下のシーンで利用します。

1.計算処理をまとめる(例:税込価格を計算)

2.データの変換を簡単にする(例:氏名をフルネームにする)

3.処理の再利用性を高める(例:同じ計算を複数のシートで使う)

 

Excel VBA 関数の基本形サンプルコード

標準モジュールに関数を作成し、他のマクロやワークシート関数として利用できます。

Excel VBAで効率化の準備をしてみませんか?2025年をよりスムーズに過ごすための資格
基本的な文法やVBAの実践的な応用までを網羅的に学習できる方法は、ExcelVBAエキスパート資格の取得を目指すこと。学習を通して、より効率的に、着実に基礎を身につけることが可能です。資格取得すれば、スキルの証明にもなり、職場での評価アップにも繋がるため、勉強を進めるモチベーションにもなります。
本サイト参考:マクロ知識がないから「何から学べば良いのかわからない」という人におすすめの記事

税込価格を計算する関数

標準モジュール

Function 税込価格(税抜価格 As Double) As Double
    税込価格 = 税抜価格 * 1.1 ' 消費税10%を適用
End Function
ポイント

・Function 関数名(引数) As 型 で定義

・戻り値 = 計算結果 で値を返す

呼び出し方法

Excelのセルに =税込価格(1000) と入力すると、1100 が表示される。

Option Explicit

Sub 計算テスト()
    Dim 価格 As Double
    価格 = 税込価格(1000)
    MsgBox "税込価格は " & 価格 & " 円です。"
End Sub

Excel VBA 引数を2つ以上持つ関数サンプルコード

 

Excel VBAで効率化の準備をしてみませんか?2025年をよりスムーズに過ごすための資格
基本的な文法やVBAの実践的な応用までを網羅的に学習できる方法は、ExcelVBAエキスパート資格の取得を目指すこと。学習を通して、より効率的に、着実に基礎を身につけることが可能です。資格取得すれば、スキルの証明にもなり、職場での評価アップにも繋がるため、勉強を進めるモチベーションにもなります。
本サイト参考:マクロ知識がないから「何から学べば良いのかわからない」という人におすすめの記事

指定した割合の税込価格を計算する

Function 税込価格率(税抜価格 As Double, 税率 As Double) As Double
    税込価格率 = 税抜価格 * (1 + 税率 / 100)
End Function

呼び出し方法

Option Explicit

Sub 税率テスト()
    Dim 価格 As Double
    価格 = 税込価格率(2000, 8) ' 消費税8%を適用
    MsgBox "税込価格は " & 価格 & " 円です。"
End Sub

Excelのセルに =税込価格率(2000, 8) と入力すると、2160 が表示される。

Excel VBA 関数をマクロから呼び出すサンプルコード

関数は マクロ(Subプロシージャ)内でも使えます

Excel VBAで効率化の準備をしてみませんか?2025年をよりスムーズに過ごすための資格
基本的な文法やVBAの実践的な応用までを網羅的に学習できる方法は、ExcelVBAエキスパート資格の取得を目指すこと。学習を通して、より効率的に、着実に基礎を身につけることが可能です。資格取得すれば、スキルの証明にもなり、職場での評価アップにも繋がるため、勉強を進めるモチベーションにもなります。
本サイト参考:マクロ知識がないから「何から学べば良いのかわからない」という人におすすめの記事

フルネームを作成する関数

Function フルネーム(姓 As String, 名 As String) As String
    フルネーム = 姓 & " " & 名
End Function

マクロから関数を呼び出す

Option Explicit

Sub 名前表示()
    Dim 名前 As String
    名前 = フルネーム("田中", "太郎")
    MsgBox "フルネーム: " & 名前
End Sub

「フルネーム: 田中 太郎」と表示されます。

 

関数を作るときの注意点

・戻り値の型を適切に設定する(As Double や As String など)

・エラー処理を考える**(例:0除算を防ぐ

・計算ロジックが明確になるようコメントを書く

 

Excel VBA 関数|引数を利用し呼び出し|まとめ

1.Function関数を使うと計算処理を再利用できる。

2.引数を使うと柔軟に関数の動作を変えられる。

3.マクロ内(Sub)やワークシート関数としても使える。

関数を活用して VBAコードをスッキリ&効率的にしましょう。

 

Excel VBAで自動化するコードのベースを習得したい方におすすめ!

VBAエキスパート資格は、日常業務でExcelを多用し、手動作業を減らしたいと考えている方には価値あるものです。

ExcelVBAエキスパートベーシック
仕事の効率をあげるためにExcelVBAを利用する人が対象の問題集です。


ExcelVBAエキスパートスタンダード

ExcelVBAの開発を仕事にする人が対象の問題集です。

 

Excel  VBA エキスパート資格について知りたい方は、下記「Excel VBAスキルアップを目指すなら知っておきたいVBAエキスパート」をご確認ください。