【まちゼミ】VBA見本(くり返し)

2020年1月11日パソコン操作

Step 1 :変数とくり返し(Next for)

変数の型を定義 dim はdimension の略
変数 i に整数(小数点のない数字のこと)を代入していきます。

Sub Sample0l()
'  変数の型を定義
Dim i As Long

    For i = 1 To 40
        Cells(i, 1) = i
    Next i
End Sub
  1. はじめに、変数の定義を行います。
  2. i は整数を扱います。
  3. 整数の型は、Integer と Long 
  4. Long の方が入力しやすいので、Long を利用しています。

くり返し For ~ Next

  • 変数の初期値を1に設定  i = 1
  • 変数が 40 になるまで繰り返します。
  • セルの i 行目 1列目「 cells(i,1) 」 に 数字 i を 入れます。
  • cells(i,1) とはセル番地 ” A1 “のことです。
  • 次の処理に進みます。 Next i

コードを入力するときの注意点

  • 字下げ(インデント)で見やすくする
  • インデントは TABキーを利用する
  • For と Next は同じレベルなので、同じインデントにする
  • For の中の処理は、さらにインデントを追加する

Step 2 :複合のくり返し

Sub Sample02()
'  変数の型を定義
Dim i As Long
Dim j As Long
    For i = 1 To 40
      For j = 1 To 20 Step 2
        Cells(i, j) = i * j
      Next j
    Next i
End Sub

Step 3 :日付を入力

Sub Sample03()
Dim i As Long
Dim d As date
     d = Date
    For i = 1 To 40
        Cells(i, 2) = d + i 
    Next i
End Sub

Step 4 :セルに表示形式を設定

Sub Sample04()
Dim i As Long
Dim d As Date
     d = Date
    For i = 1 To 40
        Cells(i, 3) = d + i
        Cells(i, 3).NumberFormatLocal = "yy/mm/dd"
    Next i
End Sub

Step 5 :日付と曜日を入力

Sub Sample05()
Dim i As Long
Dim d As Date
     d = Date
    For i = 1 To 40
        Cells(i, 4) = d + i
        Cells(i, 4).NumberFormatLocal = "yy年mm月dd日"
        Cells(i, 5).NumberFormatLocal = "(aaa)"
        Cells(i, 5) = d + i
    Next i
End Sub

Step 6 :カレンダー作成

Sub Sample06()
Dim i As Long
Dim j As Long
      For j = 1 To 12
         For i = 1 To 31
            Cells(i, j) = DateSerial(2020, j, i)
            Cells(i, j).NumberFormatLocal = "mm/dd aaa"
        Next i
    Next j
End Sub