●学校情報

講座一覧・募集状況

学習方法

学習サポート

修了生の評価

受講生の横顔

当学院について

入学相談

入学手続

 

●講座情報

技術者養成講座

プログラミング講座

WEB講座

情報処理試験講座

Excel講座

Access講座

 

●関連コラム

関連コラム

関連用語集

 

logo

 

 

関連用語集

VBのプロシージャ(Sub)について

Visual Basic(VB)における プロシージャ(Sub) とは、1つの処理のまとまりを定義するための構文です。Subプロシージャは戻り値を返さないメソッドであり、メッセージの表示やファイル出力など、結果を返す必要のない処理に適しています。

Subプロシージャの基本構文

Sub プロシージャ名()
    ' 処理内容
End Sub

例:

Sub ShowMessage()
    MsgBox "こんにちは!"
End Sub

呼び出し方法:

ShowMessage()

引数付きSubプロシージャ

Subには引数(パラメータ)を指定して、呼び出し元から値を受け取ることができます。

Sub Greet(name As String)
    MsgBox "こんにちは、" & name & "さん!"
End Sub

Greet("佐藤")

複数の引数を使う

引数はカンマで区切って複数指定できます。

Sub ShowProduct(name As String, price As Integer)
    MsgBox name & ":" & price & "円"
End Sub

ShowProduct("ノートパソコン", 120000)

ByVal と ByRef

引数は ByVal(値渡し)と ByRef(参照渡し)を使い分けることができます。ByValは変数のコピー、ByRefは元の値を変更できます。

Sub DoubleValue(ByRef num As Integer)
    num = num * 2
End Sub

Dim value As Integer = 10
DoubleValue(value)
MsgBox value  ' 結果:20

Functionとの違い

項目 Sub(プロシージャ) Function(関数)
戻り値 なし あり(Return文)
使用目的 処理のみ実行 処理結果を返す
呼び出し結果 値は返されない 結果を変数に代入できる

クラス内でのSubの利用

Public Class Person
    Public Name As String

    Public Sub SayHello()
        MsgBox("こんにちは、" & Name & "です。")
    End Sub
End Class

Dim p As New Person
p.Name = "田中"
p.SayHello()

まとめ

Subプロシージャは、処理をまとめて再利用したいときや、プログラムの構造を整理したいときに非常に役立ちます。戻り値が必要ない処理はSubにまとめておくことで、コードの可読性とメンテナンス性が向上します。Functionとの違いを意識しながら、適材適所で使い分けましょう。