Hello, all!
I'm having a problem with the DCOUNT function phrasing (or is it concatenation?) I believe. It's returning a zero value even when it looks like it should. The purpose is to check if the preventative maintenance for their machine has been done that day as they fill out their applied labor form.
From what I can tell the variables are holding the correct values so I'm thinking the problem is within the DCOUNT line.
Does anything stand out as being wrong?
Code:
Private Sub Machine_LostFocus()
Dim CheckPMForMachineVar As Variant
Dim MachineNumberVar As String
Dim MachineDBVar As String
Dim MachineVariable As Byte
Dim MachineFormVar As String
MachineVariable = Machine.Value
If MachineVariable = "1" Or MachineVariable = "2" Or MachineVariable = "3" Then
MachineDBVar = "FemcoPMLogData"
MachineFormVar = "FemcoPMForm"
ElseIf MachineVariable = "4" Or MachineVariable = "9" Then
MachineDBVar = "HaasPMLogData"
MachineFormVar = "HaasPMForm"
ElseIf MachineVariable = "8" Or MachineVariable = "10" Then
MachineDBVar = "HardingePMLogData"
MachineFormVar = "HardingePMForm"
ElseIf MachineVariable = "11" Then
MachineDBVar = "DoosanPMLogData"
MachineFormVar = "DoosanPMForm"
End If
CheckPMForMachineVar = DCount("PerformedOn", MachineDBVar, "[PerformedOn] = #" & RunDate.Value & "#" & " AND " & "[Machine] = " & Machine.Value)
'CheckPMForMachineVar = DCount("PerformedOn", MachineDBVar, "[PerformedOn] = #" & Format(RunDate.Value, "mm/dd/yyyy") & "#" & " AND " & "[Machine] = " & Machine.Value)
'MsgBox CheckPMForMachineVar
If CheckPMForMachineVar = 0 Then
MsgBox "It looks like Preventative Maintenance has not been performed on this machine today." & vbNewLine & vbNewLine & "Please remember to perform machine PMs as soon as possible."
Else
Exit Sub
End If
End Sub