プログラム開発メモ

プログラム開発で忘れがちなこと、役だったことを自分のためにメモしていくブログです。

2021-01-01から1年間の記事一覧

【ExcelVBA】for文 ネスト(入れ子)

for文の入れ子 Sub sample1() Dim i As Integer Dim j As Integer Dim str As String For i = 1 To 3 For j = 1 To 4 str = str & i & "年" & j & "組" & ", " Next j str = str & vbCrLf Next i MsgBox str End Sub

【ExcelVBA】for文 GoToでループをスキップする

ある条件の場合はそれ以降の処理を省略し、ループ内の先頭の記述にスキップする。 VBA以外のプログラミング言語だとcontinueを使うのが一般的。 Sub sample1() Dim i As Integer Dim sum As Integer For i = 2 To 10 L1: If Not IsNumeric(Range("B" & i)) T…

【ExcelVBA】for文 Exit Forでループを抜ける

ある条件に合致した場合にループを抜けるなど。 Sub sample1() Dim i As Integer Dim subject As String For i = 2 To 10 If Not IsNumeric(Range("B" & i)) Then subject = Range("A" & i) Exit For End If Next i MsgBox subject & "には数値以外の値が入…

【ExcelVBA】for文

■構文 For カウンタ名 = 初期値 To 到達値 処理 Next カウンタ名 ■例 Sub sample1() Dim arr() As Variant Dim i As Integer Dim str As String arr = Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10) For i = 0 To 9 str = str & arr(i) & ", " Next i MsgBox str En…

【ExcelVBA】if文

■構文 If 条件式1 Then 処理1 ElseIf 条件式2 Then 処理2 Else 処理3 End If ■例 Sub sample1() Dim year As Integer Dim str As String 'うるう年の場合 year = 2016 If year Mod 4 = 0 Then str = str & year & "年はうるう年です。" & vbCrLf Else str = …

【ExcelVBA】配列

■配列の宣言、定義 ・固定長配列 Dim 配列名(添字の上限値) As データ型名 ・可変長配列 Dim 配列名() As データ型名 ■初期化 ・Eraseステートメントを使う方法 Erase 配列名 初期値はデータ型によって異なる。 ・数値配列:0(ゼロ) ・文字列配列:長さ0(ゼ…

【ExcelVBA】演算子

比較演算 No. 演算子 説明 例 得られる結果 1 < 小さい 8 < 5 FALSE 2 <= 以下 3 <= 8 TRUE 3 > 大きい 8 > 5 TRUE 4 >= 以上 3 >= 8 FALSE 5 = 等しい 3 = 8 FALSE 6 <> 等しくない 3 <> 8 TRUE 算術演算 No. 演算子 説明 例 得られる結果 1 + 足し算 8 + 5…

【ExcelVBA】変数宣言

ExcelVBAの変数宣言 Dim 変数名 [As データ型] [As データ型]の[ ]の中は省略可能。 省略すれば、Variant型になって、変数に何でも入れることができる。 変数名の規則 ・半角、全角の数字と文字が使える。 ・変数名の長さは、半角で255文字以内(全角なら127…

【ExcelVBA】データ型

ExcelVBAで使用できるデータ型 ・ブール型(Boolean) True または False ・バイト型(Byte) 0~255までの整数 ・整数型(Integer) -32,768~32,767の整数 ・長整数型(Long) -2,147,483,648~2,147,483,647の整数 ・通貨型(Currency) -922,337,203,685…