Access VBA エクスポートフォルダの選択
Accessからテーブルデータやクエリをエクスポートする時に、エクスポート場所を考える時があります。
1.現在起動しているデータベースと同じフォルダにエクスポートする
現在起動しているデータベースと同じフォルダの場合は
CurrentProject.Pathのコードで指定します。
※CurrentProjectオブジェクトド
※object.Pathメソッド
Private Sub Sample export()
Dim FLPath As String: FLPath = Application.CurrentProject.Path & "\"
DoCmd.TransferText acExportDelim, "エクスポート定義", "エクスポートするテーブル名", FLPath & "テキストファイル名" & ".txt", True, ""
End Sub
これで、データベースと同じフォルダにエクスポートされます。
2.任意の指定フォルダに入れる
任意の指定フォルダにエクスポートしたい場合は
FileDialog(msoFileDialogFolderPicker)のコードで指定します。
※FileDialogオブジェクト
※msoFileDialogFolderPicker定数
Private Sub Sample export()
Set FLPath = Application.FileDialog(msoFileDialogFolderPicker)
With FLPath
'最初に表示するフォルダは起動しているデータベースのパスを表示する
.IntialFilename = Application.CurrentProject.Path & "\"
'フォルダの選択ダイアログボックスを表示する
FLPath.Show
'フォルダの選択ダイアログボックスで1つでも選択した場合エクスポートする
If FLPath.SelectedItems.Count <> 0 Then
DoCmd.TransferText acExportDelim, "エクスポート定義", "エクスポートするテーブル名", FLPath.SelectedItem(1) & "\" & "テキストファイル名" & ".txt", True, ""
End If
End With
'Set FLPathを無効にする
Set FLPath = Nothing
End Sub
FileDialog(msoFileDialogFolderPicker)のコードで任意のフォルダを選択するダイアログボックスが立ち上がるので、フォルダ選択が可能です。
IntialFilenameプロパティ は特に指定しなくても良ければ、省略できます。
これで、選択したフォルダにエクスポートされます。
コードの中の "\" は ”¥” とも表示します。