Brucey.
As I said before, I would add a nz, in case you are getting null, as below
I would test your query "QryPrintDataVBA" directly, testing different values directly, so you are 100% sure what should happen
I would add a breakpoint, or a few msgbox's to show what was happening.
I would double check what the macro is doing.
I would actually replace the macro with code
I would temporarily remove the setwarnings false, so you can see exactly what the query is trying to do
You are stuck on thinking that the dcount is not working correctly. It is working correctly. dcounts don't stop working correctly. You may have the syntax/detail wrong for what you are trying to do, though.
If nz((DCount("*", "QryPrintDataVBA", "[MealDate] = " & Format(txtCusDate, "\#mm\/dd\/yyyy\#") & _
" AND [Hospital] = '" & Me.ComboSelectHospital & "'"),0) <> 0) Then
'A date provided exists in the table
DoCmd.SetWarnings False
stDocName = "McrPrint_Customise_Labels"
DoCmd.RunMacro stDocName
Else
DoCmd.SetWarnings False
stDocName1 = "McrReOrderDiets_PrintLabels"
DoCmd.RunMacro stDocName1
End If
End Sub