Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vba 如何将查询数据导出到txt文件而不在MS access上保存查询_Vba_Ms Access - Fatal编程技术网

Vba 如何将查询数据导出到txt文件而不在MS access上保存查询

Vba 如何将查询数据导出到txt文件而不在MS access上保存查询,vba,ms-access,Vba,Ms Access,由于我需要将多个查询数据导出到.txt文件,我必须保存每个查询,是否有任何方法可以将查询数据导出到.txt文件,而无需将其保存在ms access上 谢谢您只能通过一个查询进行管理: Dim Query As DAO.QueryDef Dim SQL As String Set Query = CurrentDb.QueryDefs("ExportQuery") ' First export. SQL = <some sql to export> Query.SQL = SQ

由于我需要将多个查询数据导出到.txt文件,我必须保存每个查询,是否有任何方法可以将查询数据导出到.txt文件,而无需将其保存在ms access上


谢谢

您只能通过一个查询进行管理:

Dim Query As DAO.QueryDef
Dim SQL   As String

Set Query = CurrentDb.QueryDefs("ExportQuery")

' First export.
SQL = <some sql to export>
Query.SQL = SQL
DoCmd.TransferText acExportDelim, , "ExportQuery", "d:\folder\file1.txt"

' Second export.
SQL = <some other sql to export>
Query.SQL = SQL
DoCmd.TransferText acExportDelim, , "ExportQuery", "d:\folder\file2.txt"

' etc.
Dim查询为DAO.QueryDef
将SQL设置为字符串
Set Query=CurrentDb.querydfs(“ExportQuery”)
"第一出口,。
SQL=
Query.SQL=SQL
DoCmd.TransferText acExportDelim,“ExportQuery”,“d:\folder\file1.txt”
"第二出口,。
SQL=
Query.SQL=SQL
DoCmd.TransferText acExportDelim,“ExportQuery”,“d:\folder\file2.txt”
等等。

这应该是您想要的

Private Sub Command1_Click()
    DoCmd.TransferText acExportDelim, , "Categories", "C:\your_path_here\names.txt", True
End Sub

类别是要从中导出的对象;表、查询等

谢谢Gustav和ryguy72

在网上做了一些研究后,我发现答案只是在我的查询之间加了一个代码。通常,当我从设计视图切换到sql视图时,代码如下所示-

选择[0\u用户\u Balance]。MSISDN[0\u用户\u Balance]。区域
从0用户到0余额

要导出查询结果而不保存该查询,我只需在[Text;DATABASE=C:\Temp\;]中插入以下代码即可

这将如下所示-

选择[0\u用户\u余额].MSISDN[0\u用户\u余额].ZONE
进入[Text;DATABASE=C:\Temp\;]文件

从0用户到0余额

实现这一点的方法很多,例如使用记录集和Excel。你现在的问题太宽泛了。请共享一次尝试,以及您遇到的任何错误