合計を出す

 Sub 計算()

 Dim tanka As    Integer

 Dim     kazu     As    Integer

 Dim     goukei     As   Integer

 tanka     =  Range("A1").Value

 kazu       =  Range("B1").Value

 gukei     =  tanka  *  kazu

 Worksheets("注文").Select

 Range("C1").Value   =   goukei

 End Sub

 
メッセージを出す  MsgBox
Sub メッセージボックス()

    MsgBox ”表示します”

 End Sub

 
メッセージを出し「OK」「キャンセル」の選択肢を出す
Sub メッセージボックス()

Dim sheet As Integer

MsgBox     ”切り替えますか?”, vbOKCancel

If sheet = vbOK Then

Worksheets("結果").Select

End If

 End Sub

 
 メッセージに任意の文字及び変数を表示
Sub メッセージボックス()

 Dim kazu As Integer

 kazu = Range(”A1”).Value

 MsgBox  ”入力したのは" & kazu & ”個です”

 End Sub

 
入力フォーム  InputBox

 Sub 商品名()

 Dim kazu ’宣言のみを行うと文字、数値にも対応

 kazu = InputBox(”単価を入力” , ”注文書作成”) 

 Range("A1") = kazu

 End Sub

 
条件が合えばメッセージを表示  If~Then
Sub 合格()

 Dim goukei As Integer

 Worksheets(”テスト”).Select

 goukei = Range(”A1”).Value

If goukei  >=200 Then      ’200点以上なら合格

MsgBox ”合格です"

Else

MsgBox ”不合格です”        ’それ以外なら不合格

End If

 End Sub

 
 分岐が多い場合    Select~Case
Sub 合格()

Dim ten As Integer

Dim class As String

Worksheets(”テスト”).Select

ten = Range(”A1”).Value

Select Case ten

Case Is >=95         ’95点以上ならAクラス

class =”Aクラス”

Case Is >=85

class =”Bクラス”       ’85点以上ならBクラス

Case Else

class =”通常クラス”      ’それ以外なら通常クラス

End Select

MsgBox class

 End Sub

 
 指定した回数分の処理を行う  For~Next

 Sub テスト()

Dim kai As Integer

Dim kamoku As Integer

Dim gakka As String

Worksheets(”テスト”).Select

Range("A2").Select

For kai = 1 To 3     ’3回だけ処理をする

   kamoku = ActiveCell.Value

   ActiveCell.Offset(-1,0).Select

   gakka = ActiveCell.Value

   MsgBox gakka & kamoku & ”点です”

   ActiveCell.Offset(1,1).Select

Next kai

 End Sub

 
 指定した条件が達成するまで処理を繰り返す   Do  Until~Loop

 Sub テスト()

Dim kai As Integer

Worksheets(”テスト”).Select

Range("A2").Select

Do Until ActiveCell.Value = ””   ’空白になるまで処理を続ける

   kai = ActiveCell.Value

   MsgBox kai & ”点です”

   ActiveCell.Offset(0,1).Select

Loop

 End Sub

 
ワークシートをコピー

Sub テスト()
   Dim  namae
   Sheets("テスト").Select
   Sheets("テスト").Copy after: = Sheets("テスト")
   Sheets("テスト (2)").Select
   namae = InputBox("新シート", "シート名は?")
   Sheets("テスト (2)").Name  = namae
 End Sub

 
セルをコピー

Sub コピー()

Range(”A1").Select

Selection.End(xlDown).Select

Selection.End(xlToRight).Select

Range("A2:" & ActiveCell.Address).Copy    ’A2から右に最後を選択

Range("A5").PasteSpecial         ’コピーしたセルを貼り付け

Application.CutCopyMode = False       ’コピーモードを解除

 End Sub

 
 パスワードを入力   For~Next If~Then

 Sub パスワード()
   Dim kai As Integer

   Dim pass As String

   Dim owari As Integer
   WorkSheets("テスト").Select

   owari = 0        ’変数(owari)に0を代入

   For kai = 1 To 3   ’カウンタ変数(kai)初期値1を代入  3回まで処理を繰返
       pass = InputBox("PW入力 3回間違うと終了" , "PW入力")

       If pass =”123” Then     ’PWが「123」と正しく入ったら

       owari =1        ’変数(owari)に1を代入 それ以外は「Else」

       Exit For        ’For~Nextを抜けてIFへ

       Else

       MsgBox ”PWが違います”

       End If

   Next kai           ’変数(kai)に+1を代入しFor  kaiに戻る

     If owari = 0 Then    ’変数(owari)が0と一致なら次の行、それ以外「Else」

         MsgBox ”終了します”

     Else              ’2つ目のIFが一致しない場合は実行

         MsgBox ”結果表を表示”
         Sheets("テスト").Select
     End If
 End Sub

 

ANDとORの使い分け

Kが5でMが8のとき

If K=5 AndAlso M=8 Then

Kが5かMが8のとき

If K=5 Or Else M=8 Then