首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Access VBA导出

Access VBA导出
EN

Stack Overflow用户
提问于 2013-05-31 18:14:24
回答 2查看 232关注 0票数 1

我正在尝试将表导出到.txt文件中,以便加载到out Fulfillment软件中。我用过

代码语言:javascript
运行
复制
DoCmd.TransferText acExportDelim, "", "[Table Name]", "[Export Path Name]", False

它工作得很好。然而,有一个小问题。表格有10个产品插槽,而履行软件只有5个。我想找到一种方法,使用VBA导出5个产品的客户信息,并检查它们是否有第6个产品,如果是真的,则再次导出相同的客户信息,但这次使用产品字段6-10

我找不到任何关于导出特定字段或检查特定字段的方法,但我知道这是可以做到的。

如果这似乎含糊其辞,很抱歉。我尽我所能地解释了。

事先感谢你在这件事上的任何帮助。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-05-31 19:09:02

我建议创建一个类似于下面的查询,然后使用DoCmd.TransferText将其导出,而不是导出表:

代码语言:javascript
运行
复制
    SELECT CustomerID, Product1, Product2, Product3, Product4, Product5
    FROM [Table Name]
UNION ALL
    SELECT CustomerID, Product6, Product7, Product8, Product9, Product10
    FROM [Table Name]
    WHERE NOT
        (
            (Product6 IS NULL) AND (Product7 IS NULL) AND (Product8 IS NULL)
                AND (Product9 IS NULL) AND (Product10 IS NULL)
        )
票数 0
EN

Stack Overflow用户

发布于 2013-05-31 18:47:40

那么,如果我得到它,您的第一个目标是将表导出到.txt?

在这种情况下,我将使用如下所示的记录集:

代码语言:javascript
运行
复制
Public Sub ExportToTxt(varTableYouWantToExport As String, pathFile As String)
    Dim filenumber
    Dim db As Database
    Dim rscurrent As Recordset
    Dim strSQL As String

    Open pathFile For Output As #filenumber
    strSQL = "SELECT * FROM " & varTableYouWantToExport & ";"
    Set db = CurrentDb
    Set rscurrent = db.OpenRecordSet()

    rscurrent.MoveFirst

    While Not rscurrent.EOF
        Print #filenumber, vbCrLf & _
            rscurrent("Product_Id") & ";" _
            rscurrent("Product_Price") ";" _
            ...
        rscurrent.MoveNext
    Wend

    rscurrent.Close
    db.Close

    Close #filenumber
End Sub
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16854930

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档