以下コードを実行した際の結果として、最も適切なものはどれか。以下の選択肢より1つ解答しなさい。
ただし、Accessデータベース内に「顧客」というテーブルが存在し、C:\Temp\フォルダが事前に作成されているものとします。
Sub Exam1()
DoCmd.TransferSpreadsheet acExport, , "顧客", "C:\Temp\顧客.xlsx", True
MsgBox "エクスポートが完了しました。"
End Sub
1.Accessデータベース内の「顧客」テーブルが、C:\Temp\顧客.xlsxとしてExcelファイルにエクスポートされるものである。
2.C:\Temp\顧客.xlsxのExcelファイルの内容が、Accessデータベースの「顧客」テーブルにインポートされるものである。
3.コードの実行時にコンパイルエラーが発生するものである。
4.C:\Temp\フォルダが存在しないため、実行時エラーが発生するものである。
正解
1
解説
【6章 DoCmdオブジェクト】
【TransferSpreadsheetメソッドの引数】
●TransferSpreadsheet・・・Excelファイルをインポートあるいはエクスポートします。
引数
acExport・・・データをエクスポートする。
True・・・一行目をフィールド名とする設定です。
【コード解説】
以下コードを実行した際の結果として、最も適切なものはどれか。以下の選択肢より1つ解答しなさい。
ただし、Accessデータベース内に「顧客」というテーブルが存在し、C:\Temp\フォルダが事前に作成されているものとします。
Sub Exam1()
DoCmd.TransferSpreadsheet acExport, , "顧客", "C:\Temp\顧客.xlsx", True
’TransferSpreadsheetメソッド(Excel)の引数に定数acExpor指定し「顧客」テーブルをTrueは1行目をフィールド名として指定の場所に指定のファイル名でエクスポートする。
MsgBox "エクスポートが完了しました。"
’メッセージを表示する
End Sub

1.Accessデータベース内の「顧客」テーブルが、C:\Temp\顧客.xlsxとしてExcelファイルにエクスポートされるものである。
正しい。
DoCmd.TransferSpreadsheetメソッドはExcelファイルのインポート・エクスポートに使用され 、acExportはエクスポート、"顧客"は対象テーブル、"C:\Temp\顧客.xlsx"は出力ファイル名を指定しています。
Trueは1行目をフィールド名としてエクスポートすることを意味します。
2.C:\Temp\顧客.xlsxのExcelファイルの内容が、Accessデータベースの「顧客」テーブルにインポートされるものである。
誤り。
TransferType引数にacExportを指定しているため、データの「エクスポート」が行われます 。
3.コードの実行時にコンパイルエラーが発生するものである。
誤り。
必要な引数が全て指定されており、構文は正しいです。
4.C:\Temp\フォルダが存在しないため、実行時エラーが発生するものである。
誤り。
問題の前提でC:\Temp\フォルダは作成済みと仮定されています。