次のコードは、同じ行のB列の数値と、D列の数値が両方とも1より大きいとき、その行のA列からD列までを太字にするマクロである。
空欄に入る適切な語句を選択肢から1つ選びなさい。
Sub Exam1()
Dim i As Long
For i = 2 To 6
If Cells(i, 2) >1And Cells(i, 4) >1 Then
Cells(i, 1).【 空欄① 】 (1, 4).Font.Bold = True
End If
Next i
End Sub
1. Value
2. Offset
3. Resize
4. Count
正解
3
解説
【7章 ステートメント】
【Resizeプロパティ】
●セルのサイズを変換する。

構文: セル.Resize(変換後の行, 変換後の列)
基本のセルの位置は(1,1)です。
引数の1は省略可能です。
●Offsetプロパティでは0やマイナスの整数を指定できましたがResizeプロパティでは指定できません。1以上の整数となります。
●Resize (行, 列)引数の省略
省略可能な数値は「1」です。
・Resize(3, 1)・・・Resize(3) 同じ。行のみ拡大し、列の幅は変わらないで省略可能です。
・Resize(1, 4)・・・Resize(, 4) 同じ。列のみ拡大し、行の幅は変わらないで省略可能です。
・Offsetプロパティも引数の省略しますが、値については少し違うので注意が必要です。
●Ifステートメントは以下のような構文のパターンがあります。
本問題は以下のAnd条件の構文を使用した問題です。
●構文1
If 条件 Then 処理
条件が正しかった時処理を行ないます。条件が正しくない時は何もしません。
処理は一つのみです。
●構文2
If 条件 Then
処理
End If
条件が正しかった時処理を行ないます。条件が正しくない時は何もしません。
処理は複数記述可能です。
●構文3
If 条件 Then
処理1
Else
処理2
End If
条件が正しかった時処理1を行ないます。条件が正しくない処理2を行います。処理は複数記述可能です。
●And条件…
構文:
If 条件1 And 条件2 Then
処理
⇒ 条件1かつ条件2時はThen以降の
処理をします。条件に合わない場合、処理はしません。
● Or条件
構文:
If 条件1 Or 条件2 Then
処理
⇒ 条件1あるいは条件2の時はThen以降の
処理をします。
条件に合わない場合、処理はしません。
次のコードは、同じ行のB列の数値と、D列の数値が両方とも1より大きいとき、その行のA列からD列までを太字にするマクロである。
空欄に入る適切な語句を選択肢から1つ選びなさい。
1. Value
誤り。
Valueプロパティは、セルの値を取得または設定するためのプロパティです。
2. Offset
誤り。
Offsetプロパティは、セル範囲をからみて指定した行数と列数の位置にあるセル範囲を取得するためのプロパティです。
3. Resize
正しい。
Resizeプロパティは、セル範囲のサイズを変更するためのプロパティです。
4. Count
誤り。
Countプロパティは、セル範囲のセル数を取得するためのプロパティです。
【コード解説】
Sub Exam1()
Dim i As Long
For i = 2 To 6
'①For…Nextステートメント 変数「i」へ2から6の間で代入し、繰り返し処理をする。
If Cells(i, 2) >1And Cells(i, 4) >1 Then
'Ifステートメント…条件分岐、B列の数値と、D列の数値が両方とも1より大きいとき、以下の処理を行う…IfステートメントのAnd条件の構文です。
Cells(i, 1). Resize (1, 4).Font.Bold = True
’Cells(i, 1)をResizeでセル範囲を1行4列に変え、.Font.Bold = Trueで文字を太字にする。
End If
Next i
’For…Nextステートメント 終了値まで変数「i」の繰り返し処理①へもどる。
End Sub