使用MS Access VBA中另一个表中的条件创建Excel电子表格

时间:2011-02-01 05:23:04

标签: excel ms-access vba

我需要一些Access VBA和Excel的帮助。我有两张桌子:

t_Customer

- CustomerID
- CustomerName
- CustomerAccnt

t_Orders

- OrderID
- Desc
- PartNo
- Amount
- Disc
- Date
- CustomerID

我需要为每个客户创建Excel文件,包括订单详细信息和客户详细信息。每个文件都应该被称为“.xls的交易”我的想法是从客户表中循环每个客户,匹配订单表中的信息,创建临时表,并导出到Excel。

我不知道该怎么做,我们将不胜感激任何帮助或建议。

1 个答案:

答案 0 :(得分:3)

你是对的。我会做这样的事情(presto代码,但应该工作)

Dim Db as DAO.Database
Dim Rst as DAO.Recordset

Set Rst = Db.OpenRecordset ("SELECT Customer_ID, Customer_name FROM t_Customer")
With Rst
    Do Until .Eof
        Db.CreateQueryDef "qryTemp_query", _
            "SELECT blah FROM t_Order WHERE Customer_ID=" & !Customer_ID.Value
        DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel97, _
            "qryTemp_query", "C:\Transactions for " & !Customer_name.Value
        Db.QueryDefs.Delete "qryTemp_query"
        .MoveNext
    Loop
End With
Rst.Close
Db.Close