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

Excel VBA ベーシック 模擬問題 第4章 第10問

現在開いているブックが複数ある場合において、

ブック名「Total」シート名「Sheet1」のセルに値を代入する

マクロとして正しいものを選択肢から1つ解答しなさい。

なおブックはすでに一度保存済みである。

 

 

1.

Sub Exam1()

 WorkBooks("Total.xlsx").Sheets("Sheet1").Range("B5") = "Excel"

End Sub

 

2.

Sub Exam1()

 WorkBook("Total.xlsx").Sheets("Sheet1").Range("B5") = "Excel"

End Sub

 

3. Sub Exam1()

 WorkBook("Total.xlsx").Sheet("Sheet1").Range("B5") = "Excel"

End Sub

 

4.

Sub Exam1()

 WorkBooks("Total.xlsx").Sheet(1).Range("B5") = "Excel"

End Sub

 

正解 1

 

解説

【4章 VBAの構文】

【コレクションとブックやシート名を使い指定する】

ブック、シートの名前を使用したコレクションの構文:

構文


コレクション.("拡張子を含むブック名やシートの名前")

・オブジェクト複数形s ("名前")

保存済みブックの場合・・・WorkBooks.("拡張子を含むブック名")

新規作成した未保存済みブックの場合・・・WorkBooks.("ブック名")、保存していませんので拡張子は確定していませんので拡張子は記述しません。

シートの場合・・・Sheets("名前")、WorkSheets("名前")

 

現在開いているブックが複数ある場合において、

ブック名「Total」シート名「Sheet1」のセルに値を代入するマクロとして正しいものを選択肢から1つ解答しなさい。

なおブックはすでに一度保存済みである。


 

1. Sub Exam1()

 WorkBooks("Total.xlsx").Sheets("Sheet1").Range("B5") = "Excel"

End Sub

 

正しい。

 

名前の記述やコレクションが正しく記述されています。

 

2.

Sub Exam1()

 WorkBook("Total.xlsx").Sheets("Sheet1").Range("B5") = "Excel"

End Sub

 

誤り。

 

Workbooksコレクション複数形の記述が誤っています。

 

3. Sub Exam1()

 WorkBook("Total.xlsx").Sheet("Sheet1").Range("B5") = "Excel"

End Sub

 

誤り。

 

WorkbooksコレクションとSheetsコレクションの複数形の記述が誤っています。

 

4.

Sub Exam1()

 WorkBooks("Total.xlsx").Sheet(1).Range("B5") = "Excel"

End Sub

 

誤り。

 

Sheetsコレクションの複数形の記述とシート名の記述が誤っています。

(1)だとエクセルが自動で番号をふったシート番号1の意味になります。