【VBA講座】VBAで使用できる関数の種類について

VBAで使用できる関数には
 ・VBA関数
 ・ワークシート関数

の2種類があります!
※ユーザー定義関数(自分で作成する関数)もありますが。

PR

「VBA関数」とは

「VBAが提供している関数」です。

具体的には以下の公式ページに記載されている関数です。

VBA関数
VBA関数



以下のように使用します。

VBA関数の使用例(例:Abs関数)
PR

「ワークシート関数」とは

「ワークシートで使用できる関数」です。

ワークシートで使用できる関数(例:SUM関数)
ワークシートで使用できる関数(例:SUM関数)


「ワークシートで使用できる関数」は、VBAでも使用できます。

具体的には「WorksheetFunction」オブジェクトのメソッドです。

「WorksheetFunction」オブジェクトのメソッド(例:SUMメソッド)
「WorksheetFunction」オブジェクトのメソッド(例:Sumメソッド)



「ワークシートで使用できる関数」のほとんどの関数は、「WorksheetFunction」オブジェクトのメソッドに存在します。
※一部存在しないものもあります。


以下のように使用します。

「WorksheetFunction」オブジェクトのメソッドの使用例(例:Sumメソッド)
「WorksheetFunction」オブジェクトのメソッドの使用例(例:Sumメソッド)
PR

「VBA関数」と「ワークシート関数」の両方に存在する関数

紛らわしいですが
 ・「VBA関数」と「ワークシート関数」の両方に存在する関数
があります。

例えば「ROUND関数」です。
※「ROUND関数」は四捨五入をする関数です。

●「VBA関数」の「ROUND関数」


●「ワークシート関数」の「ROUND関数」
※「WorksheetFunction」のRoundメソッド


さらに紛らわしいですが
 ・「VBA関数」の「ROUND関数」と
 ・「ワークシート関数」の「ROUND関数」は
挙動が微妙に違います。
※違いについては別の記事に記載したいと思います。

PR

参考(ステートメント)について

関数と似たようなものとして、VBAには「ステートメント」と呼ばれるモノもあります。
※ファイルを開くための「Openステートメント」等。

詳細は以下の記事をご確認ください。