クエリが作成されたアクセス データベースがあります。このクエリを毎晩実行して、タブ区切りの csv ファイルにエクスポートできるように、自動化する必要があります。アクセス内からクエリを csv ファイルにエクスポートすることはできません。私の質問は、特定のテーブルを選択したり、mdb ファイルで SQL クエリを実行したり、csv ファイルにエクスポートしたりできるツールはありますか?
3976 次
3 に答える
3
VBScript は、Jet エンジンと非常にうまく連携します。ただし、「アクセス内からクエリを csv ファイルにエクスポートすることはできません」と言う理由がわかりません。
Sub TransferCSV()
DoCmd.TransferText acExportDelim, , "PutNameOfQueryHere", "C:\PutPathAnd\FilenameHere.csv", True
End Sub
VBAの通常の方法です。
編集: コマンド ラインから VBScript ファイル (.vbs) を実行することができます。タブ区切りファイルを出力する VBScript のサンプルを次に示します。
db = "C:\Docs\LTD.mdb"
TextExportFile = "C:\Docs\Exp.txt"
Set cn = CreateObject("ADODB.Connection")
Set rs = CreateObject("ADODB.Recordset")
cn.Open _
"Provider = Microsoft.Jet.OLEDB.4.0; " & _
"Data Source =" & db
strSQL = "SELECT * FROM tblMembers"
rs.Open strSQL, cn, 3, 3
Set fs = CreateObject("Scripting.FileSystemObject")
Set f = fs.CreateTextFile(TextExportFile, True)
a = rs.GetString
f.WriteLine a
f.Close
于 2008-11-11T13:44:43.020 に答える
3
実際には、Access 内からクエリを csv ファイルにエクスポートできます。
これは、TransferText メソッドを使用してマクロで行うことができます。
大きい:
Name = ExportQuery
Action = TransferText
Transfer Type = Export Delimited
Table Name = [name of your Access query]
File Name = [path of output file]
Has Field Names = [Yes or No, as desired]
次のように、コマンド ラインからマクロを実行できます。
"[your MS Office path]\msaccess.exe" [your databse].mdb /excl /X ExportQuery /runtime
マクロで TransferText に問題があるので、これを試してください:
1) 「ExportQuery」という名前のモジュールを作成します。このモジュールでは、「ExportQuery」という関数を作成します。
Function ExportQuery()
DoCmd.TransferText acExportDelim, , "[your query]", "[output file].csv"
End Function
2) RunExportQuery という名前のマクロを作成します。
Action = RunCode
Function Name = ExportQuery ()
于 2008-11-11T14:06:47.937 に答える
-1
SQL Server Integration Services は、あなたが話している変換を行うことができます。パッケージを自動化して実行するために SQL Server は必要ないため、名前に惑わされないでください。
于 2008-11-11T13:45:44.500 に答える