Excel VBA ベーシック 模擬問題 模擬試験

Excel VBA ベーシック 模擬問題 第17問  7章-3

'次のコードは、同じ行のB列の数値と、D列の数値が両方とも1より大きいとき、その行のA列からD列までを太字にするマクロである。

空欄に入る適切な語句を解答しなさい。

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

 

正解

【 ① 】resize

【7章 ステートメント】

●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以降の
処理をします。
条件に合わない場合、処理はしません。

 

解説

【コード解説】

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