テキストファイルへエクスポート : Access

Access VBAでテキストファイルへエクスポートするには、DoCmd.TransferTextメソッドを使用します。



BackHome BackTips Backメニュー

そして、引数TransferTypeにacExportDelimを使います。

[構文]
式.TransferText(TransferType, SpecificationName, TableName, FileName, HasFieldNames, HTMLTableName, CodePage)

[引数]
TransferType : AcTextTransferType変換の種類を指定します。
  [ 定数 ]
  • acExportDelim カンマ、タブなど区切り記号つきエクスポート(今回、これを使います)
  • acExportFixed 固定長エクスポート
  • acExportHTML HTMLエクスポート
  • acExportMerge Word差し込みデータエクスポート
  • acImportDelim カンマ、タブなど区切り記号つきインポート(既定値)
  • acImportFixed 固定長インポート
  • acImportHTML HTMLインポート
  • acLinkDelim カンマ、タブなど区切り記号つきリンク
  • acLinkFixed 固定長リンク
  • acLinkHTML HTMLリンク

SpecificationName : エクスポートの定義名
TableName : テーブルの名前
FileName : テキストファイル名
HasFieldNames : テキストファイルの1行目をフィールド名として使用する場合は、Trueに設定します。
HTMLTableName : HTMLファイルをインポートする場合指定します。
CodePage オプション : コードページの文字セットを示す長整数型のを指定します。


■ Accessサンプルソフト実行画面

「テキストファイルのエクスポート」ボタンをクリックすると、ファイル選択ダイアログが開きますので、エクスポートするテキストファイルを選択します。
テキストファイルのエクスポートソフト

・エクスポート元のテーブル
F1とF2の二つのフィールドがあります。
エクスポート元テーブルデータ

・エクスポートしたテキストファイルをメモ帳で開いた画面
メモ帳で開いたテキストデータ

■ Access VBA 実行コード

Option Compare Database

'ファイル選択ダイアログ
Public Function SelectFile_FileDialog() As String
    Dim dlgfolder As FileDialog
    Application.FileDialog(msoFileDialogSaveAs).Title = "エクスポート先ファイルを選択してください"
    Application.FileDialog(msoFileDialogSaveAs).InitialFileName = "c:\"
    Application.FileDialog(msoFileDialogSaveAs).AllowMultiSelect = False
    If Application.FileDialog(msoFileDialogSaveAs).show = -1 Then
        'ファイルが選択
        SelectFile_FileDialog = Application.FileDialog(msoFileDialogSaveAs).SelectedItems(1)
    Else
        SelectFile_FileDialog = ""
    End If
End Function

Private Sub コマンド0_Click()
    Dim sfina As String
    'ファイル選択ダイアログ
    sfina = SelectFile_FileDialog
    If sfina <> "" Then
        'ファイルが選択されればエクスポート
        DoCmd.TransferText acExportDelim, , "T_新潟県2", sfina
    End If

End Sub

BackHome BackTips Backメニュー

Copyright(C) FeedSoft