インポートしてみよう
まずオブジェクトから「マクロ」を選択してマクロの画面を開きます。
次に「新規作成」ボタンを押下してマクロを新しく作ります。
アクション欄には「やりたいこと」を記入します(条件を指定することもできます)。今回はエクセルからのインポートを行うので「ワークシート変換」を選択します。テキストからのインポートは「テキスト変換」を選びます。
画面下部分に詳細設定が表示されるので、インポートの詳細設定を行います。画像の設定だと以下のようになっています。
- 読み込むファイルはエクセル
- インポートするテーブルは「TEST_TABLE」
- 読み込むファイルの場所は「C\imp\test_table.xls」
- 一行目をフィールド名として判定する
作成したマクロを保存すると、マクロ画面に作成したマクロが表示されます。これをダブルクリックすれば、マクロが起動します。
インポートなどは、元のデータを変更するため、マクロ実行のはじめのアクションとして「確認ダイヤログ」を表示するなどすれば安全です。
- VBAで作成しているモジュール
- クエリのエクスポートができる
- CSVとXLSファイルに対応
エクスポート用VBA
Function エクスポート(TableName As String)
'設定
Dim DirPath
DirPath = "C:\access\"
Dim QueryName
QueryName = "クエリ_" & TableName
On Error GoTo エクスポート_Err
Dim OutputType
OutputType = Form_メインフォーム.出力形式フレーム.Value
If OutputType = 1 Then
'エクスポート CSV版
Dim CSVFullPath
CSVFullPath = DirPath & TableName & ".csv"
DoCmd.TransferText acExportDelim, "", QueryName, CSVFullPath, True, ""
ElseIf OutputType = 2 Then
'エクスポート Excel版
Dim ExcelFullPath
ExcelFullPath = DirPath & TableName & ".xls"
DoCmd.OutputTo acQuery, QueryName, "MicrosoftExcel(*.xls)", ExcelFullPath, False, ""
End If
エクスポート_Exit:
Exit Function
エクスポート_Err:
MsgBox Error$
End Function