Vbscript-procedures

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

VBScript-手順

関数とは何ですか?

関数は、プログラム内のどこからでも呼び出すことができる再利用可能なコードのグループです。 これにより、同じコードを何度も記述する必要がなくなります。 これにより、プログラマは大きなプログラムをいくつかの小さくて管理可能な機能に分割できます。 組み込み関数とは別に、VBScriptではユーザー定義関数も作成できます。 このセクションでは、VBScriptで独自の関数を作成する方法について説明します。

関数定義

関数を使用する前に、その特定の関数を定義する必要があります。 VBScriptで関数を定義する最も一般的な方法は、Functionキーワードを使用し、その後に一意の関数名を使用することです。これは、パラメーターのリストと、関数。

基本的な構文は以下に示されています-

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Function Functionname(parameter-list)
            statement 1
            statement 2
            statement 3
            .......
            statement n
         End Function

      </script>
   </body>
</html>

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Function sayHello()
            msgbox("Hello there")
         End Function

      </script>
   </body>
</html>

関数を呼び出す

スクリプトのどこかで関数を呼び出すには、 Call キーワードを使用してその関数の名前を簡単に記述する必要があります。

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Function sayHello()
            msgbox("Hello there")
         End Function

         Call sayHello()

      </script>
   </body>
</html>

関数パラメーター

これまで、パラメーターのない関数を見てきましたが、関数を呼び出すときに異なるパラメーターを渡す機能があります。 これらの渡されたパラメーターは関数内でキャプチャーでき、これらのパラメーターに対して任意の操作を実行できます。 関数は、 Call キーワードを使用して呼び出されます。

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Function sayHello(name, age)
            msgbox( name & " is " & age & " years old.")
         End Function

         Call sayHello("Tutorials point", 7)

      </script>
   </body>
</html>

関数から値を返す

VBScript関数には、オプションのreturnステートメントを含めることができます。 これは、関数から値を返す場合に必要です。 たとえば、関数に2つの数値を渡すと、関数から呼び出し元プログラムで乗算を返すことが期待できます。

-関数は、関数名自体に割り当てられた配列として、コンマで区切られた複数の値を返すことができます。

この関数は2つのパラメーターを受け取り、それらを連結して、呼び出し元プログラムに結果を返します。 VBScriptでは、関数名を使用して関数から値が返されます。 2つ以上の値を返す場合は、関数名が値の配列とともに返されます。 呼び出し側プログラムでは、結果は結果変数に保存されます。

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Function concatenate(first, last)
            Dim full
            full = first & last
            concatenate = full  'Returning the result to the function name itself
         End Function

      </script>
   </body>
</html>

今、私たちは次のようにこの関数を呼び出すことができます-

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Function concatenate(first, last)
            Dim full
            full = first & last
            concatenate = full  'Returning the result to the function name itself
         End Function
         ' Here is the usage of returning value from  function.
         dim result
            result = concatenate("Zara", "Ali")
        msgbox(result)
      </script>
   </body>
</html>

サブ手順

サブ手順は関数に似ていますが、違いはほとんどありません。

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

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Sub sayHello()
            msgbox("Hello there")
         End Sub

      </script>
   </body>
</html>

呼び出し手順

スクリプトのどこかでプロシージャを呼び出すには、 Call キーワードを使用して、または使用せずにそのプロシージャの名前を記述するだけで済みます。

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Sub sayHello()
            msgbox("Hello there")
         End Sub
         sayHello()

      </script>
   </body>
</html>

関数の高度な概念

VBScript関数について学ぶべきことがたくさんあります。 パラメータbyvalueまたはbyreferenceを渡すことができます。 詳細については、それぞれをクリックしてください。

  • link:/vbscript/vbscript_byvalue_function [ByVal-パラメータを値で渡す]
  • link:/vbscript/vbscript_byref_function [ByRef-パラメータを参照で渡す]