【问题标题】:Display record in Subform在子窗体中显示记录
【发布时间】:2015-01-22 06:44:48
【问题描述】:

嘿,

我是访问 vba 的新手,我想在子表单中显示记录。

第一步我需要在复选框中选择客户名称。

其次,选择/点击客户名称后,系统会自动进行记录。例如,我的客户名称是 A,因此系统将遍历客户表中的客户 A 订单 ID。然后,系统将获取客户 A 的订单 ID,然后将订单 ID 与产品表中的订单 ID 进行比较。如果产品表中的订单 ID 与客户表中的订单 ID 相同。然后子窗体中会显示同一订单ID下产品的所有记录(如产品名称、有效期、数量)。

这是我的代码。我在评论“在子表单中显示详细信息”时处于待处理状态。

Sub CustomerList_Review()

Dim db As DAO.Database
Dim rsCustLog As DAO.Recordset
Dim rsPrdLog As DAO.Recordset
Dim ordID As String

Set db = CurrentDb
Set rsCustLog = db.OpenRecordset("CustomerLog")
Set rsPrdLog = db.OpenRecordset("ProductLog")

Do Until rsCustLog.EOF
    If rsCustLog("CUSTOMER NAME").Value = Forms![Customer Review].cbxCustName Then
        ordID = rsCustLog("CUSTOMER NAME").Value

        Do Until rsPrdLog.EOF
            If rsPrdLog("ORDER ID").Value = ordID Then
                'Display the details in the subform
            End If

        rsPrdLog.MoveNext
    End If

    rsCustLog.MoveNext
Loop
End Sub

因此,每当我单击不同的客户名称时,产品详细信息都会根据客户名称订单 ID 发生变化。如果你有更简单的代码。让我知道。

感谢您的帮助。

【问题讨论】:

标签: ms-access vba


【解决方案1】:

通过使用LEFT OUTER JOINLEFT JOIN 语句,我可以得到我需要在子窗体中显示的记录。这是我的简单代码:

Sub CustomerList_Review()

Dim db As DAO.Database
Dim rsCustLog As DAO.Recordset
Dim rsPrdLog As DAO.Recordset
Dim custName As String

Set db = CurrentDb
Set rsCustLog = db.OpenRecordset("ORDER ID")
Set rsPrdLog = db.OpenRecordset("PRODUCT LOG")

custName = Forms![Customer Review]!cbxCustName.Text
Forms![Customer Review]!subform1.Form.RecordSource = _
    "SELECT [ORDER ID].[ORDER ID], [PRODUCT LOG].[SKU], " _
    & "[PRODUCT LOG].[PRODUCT NAME], [PRODUCT LOG].[LOT NO], " _
    & "[PRODUCT LOG].[EXP DATE], [PRODUCT LOG].[QUANTITY] " _
    & "FROM [ORDER ID] LEFT OUTER JOIN [PRODUCT LOG] " _
    & "ON [ORDER ID].[ORDER ID] = [PRODUCT LOG].[ORDER ID] " _
    & "WHERE([ORDER ID].[CUSTOMER NAME] = """ & custName & """);"
End Sub

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-04-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多