全国に独自の織物を提供し続ける信頼のブランド
加納のマーク 室町の加納株式会社

 販売管理システム
 顧客管理ソフト
 データベース
 Access

  リファレンス

分岐構文

If...Then...[Else]
・If...Then...Elseステートメントを使用すると、条件式の評価に  基づいて、ステートメントを実行することができます。 ◎使用例  Private Sub tb01_AfterUpdate() 'tb01の値が55の場合は、nCodeの値は2になります。 Dim nID As Integer Dim nCode As Integer nID = Me.tb01 If nID < 10 Then nCode = 1 ElseIf nID < 100 Then nCode = 2 Else nCode = 3 End If End Sub
Select Case
・Select Caseステートメントを使用すると、値のリストまたは  値の範囲と比較する式の評価に基づいて、条件付きでステートメント  を実行することができます ◎使用例 Private Sub tb01_AfterUpdate() 'tb01の値が硬貨の金額なら、それぞれのメッセージを表示します。 Dim nCoin As Integer Dim sMsg As String nCoin = Me.tb01 Select Case nCoin Case 1 sMsg = "一円玉" Case 5 sMsg = "五円玉" Case 10 sMsg = "十円玉" Case 50 sMsg = "五十円玉" Case 100 sMsg = "百円玉" Case 500 sMsg = "五百円玉" Case Else sMsg = "" End Select If sMsg <> "" Then MsgBox sMsg & "ですよ" End If End Sub
For...Next
・For...Next構文を使用すると、指定した回数だけ、  一連のステートメントを実行することができます。 ◎使用例 Private Sub tb01_AfterUpdate() '30回Beepを鳴らします Dim i As Integer For i = 1 To 30 Beep Next End Sub ☆ For...Next の使用例2 Private Sub tb01_AfterUpdate() ・入力された5倍のBeepを鳴らします。 ・ループの入れ子になっています。この場合はカウンタ変数名iと  jは省略出来ません。 ・またこの例ではiの終了値が変数になっています。 Dim i As Integer Dim j As Integer Dim nInput As Integer nInput = Me.tb01 For i = 1 To nInput For j = 1 To 5 Beep Next j Next i End Sub
For Each...Next
・For Each...Next構文を使用すると、  コレクションまたは配列内の各アイテムに対して一連の  ステートメントを実行することができます。 ◎使用例 ・配列TestArrayに配列のインデックス値+100を代入します  Dim TestArray(10) As Integer  Dim I As Variant  For Each I In TestArray   TestArray(I) = I+100  Next I
Do...Loop
・Do...Loopステートメントを使用すると、繰り返し実行するステートメント  のブロックを定義することができます。条件を満たしたときに、ループを  終了するように定義することもできます。 ◎使用例 ・テーブルのレコードが最終行の後EOFまで処理を繰り返します。 Dim sSql99 As String Dim Rs99 As New ADODB.Recordset Dim i As Long 'MSDEに接続 Set cnn = CurrentProject.Connection '配列の再設定とクリアー ReDim DenpyoRec(1) i = 0 sSql99 = "select * " sSql99 = sSql99 & " from " & pTbl sSql99 = sSql99 & " where D_NO ='" & pNo & "'" sSql99 = sSql99 & " order by G_KUBUN" Rs99.Open sSql99, cnn, adOpenDynamic, adLockReadOnly If Not Rs99.EOF Then Rs99.MoveFirst Do While Not Rs99.EOF i = i + 1 DenpyoRec(i).D_NO = Rs99![D_NO] DenpyoRec(i).G_KUBUN = Rs99![G_KUBUN] DenpyoRec(i).S_KUBUN = Rs99![S_KUBUN] Rs99.MoveNext Loop End If Rs99.Close
Call
・Call構文を使用すると、Subプロシージャへ制御を移すことができます。 ・Call文で分岐した後は、呼び出し側の次の構文に戻ります。 ・Callは省略可能ですが、プログラムの見通しが悪くなりますので、  省略はしないようにしましょう。 ◎使用例 MySubという名前のSubプロシージャを呼び出し、 整数型の変数と式を渡すには、次のように入力します。 Call MySub (intMyIntefer. curPrice * intQty) 次の構文を使用することもできます。 MySub intMyInteger. curPrice * intQty
GoTo
・Callと違い、同じプロシージャ内への分岐構文です。  また、呼び出し側へも戻りません。 ・通常は使用しない方が良いですが、エラー分岐構文として使用します。 ◎使用例 SkipOverというラベルが付いたステートメント行へジャンプするには、 次のように入力します。 GoTo SkipOver
<<前へ トップ 次へ>>