複数のforなどで囲まれている場合は、一番内側のループを抜けることになります。
| Sub test() Dim i%, j% For i = 1 To 10 Cells(i + 10, 2) = i If i = 5 Then 'iが5だったらループを抜ける Exit For End If Next i End Sub |
ExcelはVBAを使いこなすことでエンジニアにとって最強の友達に変身します。C++やJavaを習う傍らで、エクセルを思い通りに動かしてみませんか?シンプルな記述をモットーに、できるだけ短いプログラムを紹介します。
| Sub test() Dim i%, j% For i = 1 To 10 Cells(i + 10, 2) = i If i = 5 Then 'iが5だったらループを抜ける Exit For End If Next i End Sub |
| ' 親プロシージャ Sub test() Call subtest '別プロシージャの呼び出し End Sub '子プロシージャ(親から呼び出される側) Sub subtest() Cells(2, 2) = 1 End Sub |
| No. | 型名 | 型 | 省略記号 |
|---|---|---|---|
| 1 | 整数型 | integer | % |
| 2 | 長整数型 | long | & |
| 3 | 倍精度浮動小数点型 | double | # |
| 4 | 文字列型 | string | $ |
| Sub test() Dim i as integer, j as integer 'ちゃんとした宣言 Dim k%, l% '省略した宣言。こちらの方が短い i = 3 k = 4 Cells(2,2) = i Cells(3,2) = k End sub |
| Sub test() Application.ScreenUpdating = False '画面更新停止 For i = 1 To 10 ' 1から10まで繰り返す Cells(i, 2) = i ' i行2列に、iを入力する Next i Application.ScreenUpdating = True '画面更新再開 End Sub |
| Sub test() Cells(2, 2).Font.Underline = xlUnderlineStyleSingle End Sub |
| Sub test() Cells(2, 2).Font.Underline = xlUnderlineStyleNone End Sub |
| Sub test() Cells(2, 2).Font.Italic = True End Sub |
| Sub test() Cells(2, 2).Font.Italic = False End Sub |
| Sub test() Cells(2, 2).Font.Bold = True End Sub |
| Sub test() Cells(2, 2).Font.Bold = False End Sub |
| Sub test() Cells(5, 2).Font.Color = RGB(255, 0, 0) End Sub |
| Sub test() Dim ws As Worksheet Set ws = Worksheets("sheet1") ws.Cells(2, 2) = 4 End Sub |
| Sub test() Dim a As Integer, i As Integer For i = 1 To 10 ' 1から10まで繰り返す If i = 5 Then Cells(i, 2) = i ' i行2列に、iを入力する End If Next i End Sub |
| Sub test() Dim a As Integer, i As Integer For i = 1 To 10 ' 1から10まで繰り返す Cells(i, 2) = i ' i行2列に、iを入力する Next i End Sub |