• プログラム文の単語一つ一つのことを“キーワード”と呼ぶ • 一行一行の命令文を“ステートメント”と呼ぶ • 命令文を束ねた塊を“プロシージャ”と呼ぶ
Sub Sample1() MsgBox(“Hello World!”) End Sub
プロシージャー
• Sub taketake() • MsgBox(“Hello World!”) • End Sub
• MsgBox • “Hello World!” それぞれがステートメントです
それぞれがキーワードです
Sub sample1() MsgBox(“Hello World!”) End Sub
Sub foo1() ‘処理 End Sub
Function foo2() As ‘処理 foo2 = <戻り値> End Function
Private Sub object_name.event_name() ‘処理 End Sub
サブルーチンプロシージャ
ファンクションプロシージャ
イベントプロシージャ
“プロシージャ”のお話 “サブルーチン”と“ファンクション”と“イベント”
“Hello World!”をもっといろんな方法で表現してみましょう
Sub sample2_1() sample2_2() End Sub Sub sample2_2() Dim variable_sample As String variable_sample = "Hello World!" MsgBox (variable_sample) End Sub
この2つのプロシージャで”Hello World!”を表示します
ね、簡単(ry
Sample2_1() を実行
ちょっとマニアックに… なぜデータ型はデータを限定するのか?
• ためしにわざとオーバーフローさせてみましょう Sub sample2_4() Dim byte_sample As Byte byte_sample = 256 MsgBox (byte_sample) End Sub
sample2_4() を実行
• 次はファンクションプロシージャを用いてHello World!しましょう
Sub sample3_1() Dim function_return As String function_return = sample3_2("Hello World!") MsgBox (function_return) End Sub Function sample3_2(input_text As String) As String Dim receive_text As String receive_text = input_text sample3_2 = receive_text End Function
(ry
sample3_1() を実行
ファンクションプロシージャとは
• あまり説明してきませんでしたが、ファンクションはこの勉強会の 最初から使いまくってます • MsgBoxと言うのはダイアログボックスを表示し、ユーザーが 押したボタンの内容を戻します
Sub sample1() MsgBox(“Hello World!”) End Sub
Sub sample3_4() Dim dialog_result As String dialog_result = MsgBox("Hello World!", vbOKCancel) MsgBox (dialog_result) End Sub
←ここです
sample3_4() を実行
• 自分でファンクションを作る(宣言する)には次のように書きます • 試しに、足し算するファンクションを見てみましょう
ファンクションプロシージャとは
Function add_up(variable1 As Integer, variable2 As Integer) As Integer Dim return_variable As Integer return_variable = variable1 + variable2 add_up = return_variable End Function
外部からデータを受ける変数の定義(引数)
戻り値のデータ型
ファンクション名
戻り値を指定するにはファンクション名に代入
引数名
データ型
• “Hello World!”を5回、回数を含めて表示したいとします • 表示例:「Hello World! 1回目」、「Hello World! 2回目」…
Sub sample4() Dim show_text As String Dim i As Integer For i = 1 To 5 show_text = "Hello world! " & i & "回目" MsgBox (show_text) Next i End Sub
sample4() を実行
…
• 同じようなことを何度も繰り返したい場合は“繰り返し文”を使います • For – Next ステートメント • For Each – Next ステートメント • While – Wend ステートメント • Do While – Loop ステートメント • Do Until – Loop ステートメント • Do Loop – While ステートメント • Do Loop – Until ステートメント • 例で用いた For – Nextステートメントを詳しく見てみましょう
Sub sample4() Dim show_text As String Dim i As Integer For i = 1 To 5 show_text = "Hello world! " & i & "回目" MsgBox (show_text) Next i End Sub
繰り返す変数を指定する
1から5までの整数をiに繰り返すたび増加しながら代入する
“&”で文字列として結合する
“For i = …”まで戻る