Excel

【初心者でもわかる】 Excel VBA入門 – 関数の活用とカスタム関数の作成 Day 4:

Excel VBA入門シリーズの第4日目です。今日は関数の活用とカスタム関数の作成について学びます。関数を使うことで、より高度な計算や処理が可能になります。さらに、自分自身でカスタム関数を作成することで、独自の処理や計算を実現できます。

・Excelの組み込み関数だけでは必要な計算や処理ができない。
・複雑な計算や特定の処理を自動化したいな~。
・カスタム関数の作成方法や応用例について学びたいけど難しい。

【このブログの対象者】
 ・Excelの組み込み関数を一通り使いこなせる初級者の方。
 ・より高度な計算や処理を行いたい中級者の方。
 ・カスタム関数の作成に興味のある方。

🚀 0円で現役エンジニアから学べる【Techスクールオンライン】のお申込みをお勧めします。 このオンラインスクールでは、現役のエンジニアから直接学ぶことができ、プログラミングの基礎から高度なスキルまでを習得できます。しかも、今なら 0円 で受講できるチャンスです。 エンジニア転職を考えている方やプログラミングに興味がある方、新しいスキルを習得したい方に特におすすめです。

Excelの組み込み関数の構文

【関数の活用と構文】
関数はExcelの標準的な機能であり、以下のような構文で使用します。

結果 = 関数名(引数1, 引数2, ...)

SUM関数を活用した組み込み関数の具体例

SUM関数はセル範囲の値の合計を計算するための関数です。
今回は下記のプログラムを使用して、CalculateTotal()という関数を作成します。
この関数では、C2~C9のセルの足し合わせを行い、MsgBoxに合計値を表示するプログラムになります。

Sub CalculateTotal()
    Dim total As Double
    
    ' C2からC9までのセル範囲の合計を計算
    total = Application.WorksheetFunction.Sum(Range("C2:C9"))
    
    MsgBox "合計値: " & total
End Sub

実際にプログラムを実行すると、このように、MsgBoxに53000と足しあわされた数字が表示されるのがわかります。このように、自由に関数を作ることができます。今回は、CalculateTotal()という関数で名づけましたが、名前はなんでもOKです。

カスタム関数を使ったオリジナルの関数

カスタム関数を作成することで、自分自身の特定の処理や計算を関数として利用できます。以下は、簡単なカスタム関数の作成例です。MultiplyByTwoという関数を作成します。こちらの関数は値を2倍にする関数を作成します。
今回は、C2~C9を入力セルとして、D2~D9に出力セルを設定します。
先ほど作成(上の3行)で作成した関数(MultiplyByTwo)を使って、これらのセルに対して、2倍の値を出力します。

Function MultiplyByTwo(ByVal value As Double) As Double
    MultiplyByTwo = value * 2
End Function

Sub MultiplyRangeByTwo()
    Dim rng As Range
    Dim cell As Range
    
    ' 元のデータ範囲と出力範囲を指定
    Set rng = Range("C2:C9")
    Set outputRange = Range("D2:D9")
    
    ' カスタム関数を使ってデータを2倍にして出力
    For Each cell In rng
        outputRange.Cells(cell.Row - 1, 1).value = MultiplyByTwo(cell.value)
    Next cell
End Sub

この例では、与えられた数値を2倍にして返すカスタム関数「MultiplyByTwo」を作成しています。

マクロを実行すると、右の図のようになり、セルの数値を2倍にした値が表示されるようなVBAを作成することができました。

まとめ


今日は関数の活用とカスタム関数の作成について学びました。組み込み関数を使うことで便利な計算や処理を行えますし、カスタム関数を作成することで独自の処理を実現できます。これらの機能を組み合わせて利用することで、より高度な操作や自動化が可能になります。関数はExcel VBAの強力なツールであり、データの処理や分析において重要な役割を果たします

次回以降も、さらに高度なExcel VBAの機能や応用例を学んでいきますので、お楽しみに!もしExcel VBAの更なる学習を望むのであれば、Excelの公式ドキュメントや参考書籍もご検討ください。

🚀 0円で現役エンジニアから学べる【Techスクールオンライン】のお申込みをお勧めします。 このオンラインスクールでは、現役のエンジニアから直接学ぶことができ、プログラミングの基礎から高度なスキルまでを習得できます。しかも、今なら 0円 で受講できるチャンス。
私がツナグバに登録してから、求人情報が豊富に届き、自分に合った仕事を見つけることができました。特に、第二新卒向けの求人情報が多いので、自分のスキルや経験を活かしながら新たなキャリアに挑戦することができました。転職活動は不安も多いですが、ツナグバのサポートがあれば、成功への道が明るく感じました。