Excel ベーシック 問題 8 – 11
マクロ「Test1」を実行したところ、次の図のようにA列に入力された文字列に「a」の文字がある場合、対象の文字列がB列に入力された。このとき、【 1 】に入る適切な内容を答えなさい。
Sub Test1()
Dim i As Long, j As Long
j = 1
For i = 1 To 6
If 【 1 】(Cells(i, 1), "a") > 0 Then
Cells(i, 1).Copy Cells(j, 2)
j = j + 1
End If
Next i
End Sub
選択肢
- Mid
- InStr
- Abs
- LTrim
正解を見る
正解
2. InStr
解説
「InStr関数」は、引数に指定した文字列において、指定した文字列を先頭から検索し、最初に見つかった文字の位置を取得する関数です。
InStr(文字列, “検索する文字列”)
この問題の場合、セルA1、A3、A5においては「a」が文字列の1番目にあるため、「1」の結果を返します。
セルA2、A4、A6においては「a」が文字列にないため、「0」の結果を返します。
そのため、セルA1、A3、A5のみ条件にマッチし、B列にコピーされます。
「Mid関数」は、引数に指定した文字列において、指定した位置から指定した数の文字列を取得する関数です。
「Abs関数」は、引数に指定した数値の絶対値を取得する関数です。
「LTrim関数」は、左端にあるスペースを削除する関数です。