Excel VBAのサブルーチン&関数の違い

  • これを共有
Hugh West

と似ているところがたくさんあります。 カスタム関数/ユーザー定義関数 の手順と サブプロシージャー/サブルーチン において エクセル しかし 機能 とは、いくつかの重要な違いがあります。 サブルーチン のサブルーチンと関数の違いについて説明します。 エクセルブイビーエー .

練習用ワークブックをダウンロードする

練習用ワークブックは、こちらからダウンロードできます。

サブルーチンと関数.xlsm

Excel VBAのサブルーチン&関数入門

最も重要な違いは、関数は値(数値またはテキスト文字列)を返すことです。 関数プロシージャの値は変数に格納されます。 サブルーチンは、ある一連のタスクを実行し、関数のように値を返しません。

1.エクセルVBAユーザー定義関数

次の例をご覧ください。 AddTwoNumber として渡された2つの数値の和を返します。 議論 ( アーグワン アーグ2 という名前の変数に格納される。 AddTwoNumber 関数名と同じです。

AddTwoNumber VBA関数

カスタム関数を作成するには、次の手順に従います。

  • まず、起動します。 VBAエディタ を押して Alt+F11 .
  • 2つ目は、ワークブックを プロジェクト ウィンドウに表示されます。
  • 第三に、選択 インサート そして モジュール を挿入します。 ブイビーエー また、既存のコードモジュールを使用することもできます。 コードモジュールは、標準的な ブイビーエー モジュールで構成されています。

  • 次に、以下の関数のコードをコピーして貼り付けます。 関数名は、そのワークブックで一意でなければなりません。 引数(ある場合)のリストを括弧内に入力します。 関数が引数を使用しない場合、その関数は VBAエディタ は、空の括弧のセットを追加します。
 Function AddTwoNumber(arg1, arg2) '引数として与えた2つの数値の合計を返す AddTwoNumber = arg1 + arg2 End Function 
  • さらに、この部分が重要です。 を挿入してください。 ブイビーエー この関数から返したい値は、関数名と同じ名前の変数に格納されます。
  • 最後に、この関数の最後に エンドファンクション .

続きを読む VBAユーザー定義関数の使い方(4つの適切な例)

類似の読み物

  • Excel VBAによる22のマクロ例
  • Excel VBAをマスターするための20の実践的なコーディングのヒント
  • ExcelのVBAコードの書き方(簡単な手順付き)
  • ExcelのVBAマクロの種類 (クイックガイド)

2.エクセルVBAサブルーチン

のサブルーチンがどのようなものであるか、次の例で見てみましょう。 エクセルブイビーエー が動作します。 サブ はサブルーチン本体を開始する。 サブルーチン名は square_root である。 サブルーチン本体では、セル A2 タスクは、セルで平方根を実行することです。 A2 これは、セルに何らかの数値が含まれている場合、Excel VBAがそのセルの平方根を計算することを意味します。 エンド・サブ はサブルーチン本体を終了する。

サブルーチンを作成するには、以下の手順で行います。

  • まず、起動します。 VBエディタ (プレス Alt+F11 ).
  • 2つ目は、ワークブックを プロジェクト ウィンドウに表示されます。
  • 第三に、選択 インサート そして モジュール また、既存のコードモジュールを使用することもできます。 コードモジュールは、標準的なVBAモジュールである必要があります。

  • 次に、キーワードを入力します。 サブ の後にサブルーチン名が続きます。
  • さらに、挿入する ブイビーエー を実行したいコードです。
 Sub square_root() Range("C5").Value = Range("C4").Value ^ (1 / 2) End Sub 
  • 最後に、サブルーチンに エンド・サブ .

Excel VBAのサブルーチン&関数の主な相違点

サブルーチンとファンクションを別々に実行した後、下の表のような違いがあると結論付けられます。

機能 サブルーチン
1) 値を返す。 1) 一連のタスクを実行するが、値を返さない。
2) 関数は、変数を用いて呼び出す。 2) 宣言後、プログラム内の任意の場所から複数種類を呼び出すことができる。
3)表計算ソフトの計算式として利用できる。 3) 数式として直接スプレッドシートで使用することはできません。
4) 関数を表計算ソフトの数式として使用することができる。 コードを実行してから何度も実行することができる。 4) Excel VBAのサブルーチンの結果を見つけるために、まず目的のセルに値を挿入する必要があります。
5) 構文です。

関数 Function_Name()

//コードセット

エンドファンクション

5) 構文です。

Sub Sub_Name ()

//コードのセット

エンド・サブ

覚えておきたいこと

  • 開発者 タブ は、これらのメソッドを使用する前に有効にする必要があります。
  • を見つけることができます。 サブルーチン において マクロ において デベロッパー タブにあるユーザー定義関数に対して 機能 タブをカスタム検索で表示します。

結論

もし、これらの手順で問題が発生したり、矛盾がある場合は、コメントでお知らせください。 私たちのチームは、あなたの質問にすべて答える準備ができています。 エクセル関連の問題は、私たちのウェブサイトをご覧ください。 エクセルウィキ を解決します。

Hugh West は、業界で 10 年以上の経験を持つ、非常に経験豊富な Excel トレーナー兼アナリストです。彼は会計と財務の学士号と経営管理の修士号を取得しています。ヒューは教えることに情熱を持っており、理解しやすい独自の教育アプローチを開発しました。彼の Excel に関する専門知識は、世界中の何千人もの学生や専門家がスキルを向上させ、キャリアで優れた成果を上げるのに役立ってきました。 Hugh はブログを通じて知識を世界に共有し、個人や企業が潜在能力を最大限に発揮できるよう無料の Excel チュートリアルとオンライン トレーニングを提供しています。