类型不匹配;需要建议

时间:2015-03-23 22:11:33

标签: vba form-control

我有一个美国硬币数据库,我正在研究,从那时起就一直在拉我的头发。

我有一张简单的表格,列出了所有硬币。表格中有一个勾选框(是/否)表示我是否有该硬币。从表qUSA

创建查询

该查询用于生成Form USA ,并且在表单中有一个 UNBOUND ComboBox,可以选择列出每个形式内的硬币面额......例如1c,5c等等。

从表单中我创建了一个按钮,该按钮根据所选的组合框面额启动报表。我还创建了另一个按钮来列出集合中的所有硬币(即当记录在是/否字段中有勾选时)。

这一切都是单独的,但我现在想要创建另一个按钮,列出我的收藏中的所有1c。例如。当我想运行一个说1c硬币的报告,但在我的收藏中(即在字段中有一个勾号)我得到一个类型不匹配错误或如果我摆弄代码它给我所有1c硬币无论它们是否在我的收藏中或不。

请帮忙。很明显我对VBA并不擅长!!

以下是代码:

Private Sub ReportDenomination_Click()
    On Error GoTo Err_ReportDenomination_Click

    Dim stDocName As String

    stDocName = "USA"
    strWhere1 = "[Denomination] = '" & Me.Combo16 & "'"
    strWhere2 = "[Purchased] = " & "Yes"

    DoCmd.OpenReport stDocName, acViewPreview, , strWhere1 And strWhere2

Exit_ReportDenomination_Click:
    Exit Sub

Err_ReportDenomination_Click:
    MsgBox Err.Description
    Resume Exit_ReportDenomination_Click

1 个答案:

答案 0 :(得分:0)

您的DoCmd.OpenReport语句需要SQL等效的" WHERE"声明,但您只提供按位逻辑 - 尝试将其更改为:

DoCmd.OpenReport stDocName, acViewPreview, , strWhere1 & " AND " & strWhere2