スタンダード 模擬問題

Excel VBA スタンダード 模擬試験 ランダム順出題 ④ 第1問

次のコードは、シート上セルの値を使用したファイルパスでブックを開くことを想定したマクロである。

次の選択肢の中からブックを開く適切コードを選択しなさい。

1. Workbooks.Open"C:\User\" & "Range("A2")" & "1.xlsx"

2. Workbooks.Open "C:\User\" & "Range("A2")" & "1" & .xlsx"

3. Workbooks.Open "C:\User\" & Range("A2") & "1.xlsx"

4. Workbook.Open "C:\User\" & Range("A2") & "1.xlsx"

excel-vba-standard-test-statement-3032
正解

3

解説 

【4章 ファイルの操作】

【Openメソッド】

Openメソッド…ブックを開く
構文
Workbooks.Open FileName:="ファイル位置のパス"

「Workbooks」コレクションを指定することや、ファイルの位置のパスをダブルクォーテーションで囲むことに注意が必要です。

【コード解説】

次のコードは、シート上セルの値を使用したファイルパスでブックを開くことを想定したマクロである。

次の選択肢の中からブックを開く適切コードを選択しなさい。

1. Workbooks.Open"C:\User\" & "Range("A2")" & "1.xlsx"

誤り。

・・・Range("A2")に””をつけるとRange(”A2”)という文字列になってしまいます。

2. Workbooks.Open "C:\User\" & "Range("A2")" & "1" & .xlsx"

誤り。

・・・””をつけるとRange(”A2”)、1という文字列になってしまいます。

3. Workbooks.Open "C:\User\" & Range("A2") & "1.xlsx"

正しい。

・・・「&」演算子で前後を連結するとセルBに入力された文字列をそのままファイルパス使用できます。

→"C:\User\American Football1.xlsx"

4. Workbook.Open "C:\User\" & Range("A2") & "1.xlsx"

誤り。

・・・Openメソッドでブック開くときはWorkbook ではなくコレクションのWorkbooksで表します。