Vba-sub-procedure

提供:Dev Guides
移動先:案内検索

VBA-サブ手順

  • サブプロシージャ*は関数に似ていますが、いくつかの違いがあります。
  • サブプロシージャは値を返しませんが、関数は値を返す場合と返さない場合があります。
  • サブプロシージャは、callキーワードなしで呼び出すことができます。 *Subプロシージャは、常にSubおよびEnd Subステートメントで囲まれます。

Sub Area(x As Double, y As Double)
   MsgBox x* y
End Sub

呼び出し手順

スクリプトのどこかでプロシージャを呼び出すには、関数から呼び出しを行うことができます。 サブプロシージャは値を返さないため、関数と同じ方法を使用することはできません。

Function findArea(Length As Double, Width As Variant)
   area Length, Width    ' To Calculate Area 'area' sub proc is called
End Function

これで、次のスクリーンショットに示すように、サブプロシージャではなく関数のみを呼び出すことができます。

VBAのサブプロシージャ

面積が計算され、[メッセージ]ボックスにのみ表示されます。

VBAのサブ領域2を計算

関数から面積値が返されないため、結果セルにはZEROが表示されます。 つまり、Excelワークシートからサブプロシージャを直接呼び出すことはできません。

VBAのサブ領域3を計算