「Visual Basic 6の基礎 - 関数」の版間の差分
ナビゲーションに移動
検索に移動
(ページの作成:「== 概要 == <br><br> == 基本構文 == <syntaxhighlight lang="vb"> ' 関数 [Private|Public] Function <関数名>([<引数> As <型>, ...]) [As <戻り値の型>] ' 処理 関数名 = 戻り値 '戻り値の設定 End Function ' サブルーチン [Private|Public] Sub <サブルーチン名>([<引数> As <型>, ...]) ' 処理 ' ...略 End Sub </syntaxhighlight> <br><br> == プロパティ== <syntaxhighlight lang="vb"> Property Get <…」) |
(→概要) |
||
1行目: | 1行目: | ||
== 概要 == | == 概要 == | ||
Visual Basic 6の関数は、特定の処理を行い値を返すプログラムの一部として機能する。<br> | |||
<br> | |||
アクセス修飾子として、<code>Private</code>や<code>Public</code>を指定して、関数名の後に引数を定義する。<br> | |||
戻り値の型は、<code>As</code>キーワードで指定する。<br> | |||
<br> | |||
関数内では値を計算や処理を行い、最終的に関数名に値を代入することで戻り値を設定する。<br> | |||
データ型には数値型、文字列型、オブジェクト型等があり、目的に応じて適切な型を選択できる。<br> | |||
<br> | |||
引数の受け渡し方法には値渡し (ByVal) と 参照渡し (ByRef) があり、デフォルトは参照渡しである。<br> | |||
必要に応じて、省略可能な引数や可変長引数も使用できる。<br> | |||
<br> | |||
関数は他の関数やサブルーチンから呼び出すことができ、モジュール化されたコードの定義に役立つ。<br> | |||
また、エラーハンドリングのためにOn Errorステートメントを使用することもできる。<br> | |||
<br><br> | <br><br> | ||
2025年1月23日 (木) 15:31時点における版
概要
Visual Basic 6の関数は、特定の処理を行い値を返すプログラムの一部として機能する。
アクセス修飾子として、Private
やPublic
を指定して、関数名の後に引数を定義する。
戻り値の型は、As
キーワードで指定する。
関数内では値を計算や処理を行い、最終的に関数名に値を代入することで戻り値を設定する。
データ型には数値型、文字列型、オブジェクト型等があり、目的に応じて適切な型を選択できる。
引数の受け渡し方法には値渡し (ByVal) と 参照渡し (ByRef) があり、デフォルトは参照渡しである。
必要に応じて、省略可能な引数や可変長引数も使用できる。
関数は他の関数やサブルーチンから呼び出すことができ、モジュール化されたコードの定義に役立つ。
また、エラーハンドリングのためにOn Errorステートメントを使用することもできる。
基本構文
' 関数
[Private|Public] Function <関数名>([<引数> As <型>, ...]) [As <戻り値の型>]
' 処理
関数名 = 戻り値 '戻り値の設定
End Function
' サブルーチン
[Private|Public] Sub <サブルーチン名>([<引数> As <型>, ...])
' 処理
' ...略
End Sub
プロパティ
Property Get <プロパティ名>() As <型>
' 取得処理
' ...略
End Property
Property Let <プロパティ名>(<値> As <型>)
' 設定処理
End Property
引数の修飾子
- ByVal
- 値渡し
- ByRef
- 参照渡し (デフォルト)
- Optional
- 省略可能な引数
- ParamArray
- 可変長引数
関数の定義例
基本的な関数
Private Function Add(ByVal x As Integer, ByVal y As Integer) As Integer
Add = x + y
End Function
' 使用例
Dim result As Integer
result = Add(5, 3) ' result = 8
参照渡しのサブルーチン
Private Sub Swap(ByRef a As Integer, ByRef b As Integer)
Dim temp As Integer
temp = a
a = b
b = temp
End Sub
' 使用例
Dim x As Integer, y As Integer
x = 1
y = 2
Swap x, y ' x = 2, y = 1
オプション引数
Private Function Multiply(ByVal x As Integer, Optional ByVal y As Integer = 1) As Integer
Multiply = x * y
End Function
' 使用例
Dim result As Integer
result = Multiply(5) ' result = 5
result = Multiply(5, 2) ' result = 10
可変長引数
Private Function Sum(ParamArray numbers() As Variant) As Long
Dim total As Long
Dim i As Integer
For i = 0 To UBound(numbers)
total = total + numbers(i)
Next
Sum = total
End Function
' 使用例
Dim result As Long
result = Sum(1, 2, 3, 4, 5) ' result = 15
プロパティ
Private m_Name As String
Property Get Name() As String
Name = m_Name
End Property
Property Let Name(ByVal value As String)
m_Name = value
End Property
' 使用例
Me.Name = "Test" ' 設定
Debug.Print Me.Name ' 取得