1

Access にフォームがあり、コンボ ボックス リストからの選択を使用してレポートを作成します。

コンボ ボックスの選択は ID として評価されます。テキストとして取得する必要があります。他の同様の問題を見つけましたが、動作させることができません。誰かが私を案内してくれますか?

私が見つけた最も近いスレッドはhttp://www.access-programmers.co.uk/...ad.php?t=58062でしたが、「ルックアップ テーブルへの参加」が何を伴うのかわかりません。

以下のコードでは、txtExpr1001、txtIndustry、および txtSkill がコンボ ボックスです。

コード:

Private Sub cmdSubmit_Click()

Dim sWhereClause As String

sWhereClause = "Expr1001 = '" & txtExpr1001.Value & "' AND MonthsCon >= " & txtMonth1.Value & " AND IndustryName = '" & txtIndustryName.Value & "' AND MonthsNonCon >= " & txtMonth2.Value & " AND Skill = '" & txtSkill.Value & "' AND MonthsSkills >= " & txtMonth3.Value & ""

Call DoCmd.OpenReport("IndustryCon + IndustryNonCon + Skills", acViewPreview, , sWhereClause)

End Sub

私のコードはエラーを引き起こしません。レポートは開きますが、空白です。

4

1 に答える 1

0

If you want to get the value of a combo box (which I'm not sure which of your .values are the combo box if any are) then you can just write something like this:

Private Sub cmdSubmit_Click()

    Dim sWhereClause As String

    'Me.Combo_BoxName.Column(0) is going to be how you call the combo box
    'I put it right at the front of the string and chose ID as a random name as well

    sWhereClause = "ID = '" Me.Combo_BoxName.Column(0) & "' AND Expr1001 = '" & txtExpr1001.Value & "' AND MonthsCon >= " & txtMonth1.Value & " AND IndustryName = '" & txtIndustryName.Value & "' AND MonthsNonCon >= " & txtMonth2.Value & " AND Skill = '" & txtSkill.Value & "' AND MonthsSkills >= " & txtMonth3.Value & ""

    Call DoCmd.OpenReport("IndustryCon + IndustryNonCon + Skills", acViewPreview, , sWhereClause)

End Sub
于 2013-08-09T18:20:20.773 に答える