@hp079 מתוך ההערה שלך, הערת את תשומת לבי שהייתה לי טעות בקוד המקורי שלי: בכל תנאי חדש אני דרסתי את התוכן הקודם של DynamicCondition
במקום לשרשר אליו תנאי נוסף...
כתשובת המשקל, עכשיו אני אחיל קצת עקרונות תכנות, ואכתוב את הכל מחדש כך:
Dim DynamicCondition As String
Private Sub AddCondition(ByRef currentCondition As String, conditionToAdd As String)
Begin
If (Len(currentCondition)=0) Then
currentCondition = conditionToAdd
Else
currentCondition = currentCondition & " AND " & conditionToAdd
End If
End
DynamicCondition=""
' Add first condition
If (Not IsNull(chkSet_ok)) Then AddCondition DynamicCondition, "Ok=" & CStr(chkSet_ok)
' Add second condition:
If (Not IsNull(chkDone)) Then AddCondition DynamicCondition, "Done=" & CStr(chkDone)
' Add more conditions
If (Only_Bar_Mitsva) Then AddCondition DynamicCondition, "Age>=13"
...
' Open report with all my conditions:
DoCmd.OpenReport "MyReport", acViewNormal, WhereCondition:=DynamicCondition