Weird problem:

H

Henro

I have a form that fills the following query with results:

SELECT Urenregistratie.ID, Urenregistratie.Engineer,
[Urenregistratie]![Datum] AS Weeknummer, Urenregistratie.Datum,
Urenregistratie.[Start Dag], Urenregistratie.[Eind dag],
Urenregistratie.Lunch, Urenregistratie.[Totaal reis], ([Totaal
reis]-[Aftrekbaar]) AS [Reistijd Werk], Urenregistratie.[Avond Start],
Urenregistratie.[Avond Eind], (NZ([Eind dag]-[Start Dag]))+(NZ([Avond
Eind])-NZ([Avond Start]))-NZ([Lunch]) AS [Totaal tijd], (NZ([Eind
dag])-NZ([Start Dag]))+(NZ([Avond Eind])-NZ([Avond
Start]))-NZ([Lunch])-NZ([Aftrekbaar]) AS [Totale werkdag],
Urenregistratie.Omschrijving, Urenregistratie.[Te werken uren], [Totale
werkdag]-[Te werken uren] AS [Plus of min], Urenregistratie.[Eigen
reistijd], IIf(NZ([Totaal Reis])<NZ([Eigen reistijd]),[Totaal
Reis],NZ([Eigen Reistijd])) AS Aftrekbaar, Urenregistratie.InstBSItijd,
Urenregistratie.InstMultiCash, Urenregistratie.Overige,
Urenregistratie.InstONXtijd, Urenregistratie.InstONEtijd,
Urenregistratie.SolBSItijd, Urenregistratie.SolMulticash,
Urenregistratie.SolONXtijd, Urenregistratie.SolONEtijd,
Urenregistratie.ReistijdDEALGerelateerd,
NZ([InstBSItijd])+NZ([Overige])+NZ([InstONXtijd])+NZ([InstONEtijd])+NZ([SolB
SItijd])+NZ([SolONXtijd])+NZ([SolONEtijd])+NZ([ProjectDEAL])+NZ([Advies
Sales Telefonisch
Consult])+NZ([Urenregistratie]![ReistijdDEALGerelateerd])+NZ([Urenregistrati
e]![InstMulticash])+NZ([Urenregistratie]![SolMulticash]) AS TotaalDEAL,
Urenregistratie.[Algemene uren], Urenregistratie.[Bilateraal/Coaching],
Urenregistratie.[Cursus/Opleiding], Urenregistratie.WerkOverleg,
Urenregistratie.[Reistijd Niet Client Gerelateerd],
Urenregistratie.ProjectDEAL, Urenregistratie.ProjectNONDEAL,
Urenregistratie.[Advies Sales Telefonisch Consult], NZ([Algemene
uren])+NZ([Bilateraal/Coaching])+NZ([Cursus/Opleiding])+NZ([WerkOverleg])+NZ
([Reistijd Niet Client Gerelateerd])+NZ([ProjectNONDEAL]) AS TotaalNONDeal,
Urenregistratie.[Verlof/Vakantie], Urenregistratie.Ziek,
NZ([Verlof/Vakantie])+NZ([Ziek]) AS TotaalPersoonlijk,
NZ([InstBSItijd])+NZ([Overige])+NZ([InstONXtijd])+NZ([InstONEtijd])+NZ([SolB
SItijd])+NZ([SolONXtijd])+NZ([SolONEtijd])+NZ([ReistijdDEALGerelateerd])+NZ(
[Algemene
uren])+NZ([Bilateraal/Coaching])+NZ([Cursus/Opleiding])+NZ([WerkOverleg])+NZ
([Reistijd Niet Client
Gerelateerd])+NZ([ProjectDEAL])+NZ([ProjectNONDEAL])+NZ([Advies Sales
Telefonisch
Consult])+NZ([Verlof/Vakantie])+NZ([InstMulticash])+NZ([SolMulticash]) AS
[Controle Uren],
IIf(NZ([InstBSItijd])+NZ([Overige])+NZ([InstONXtijd])+NZ([InstONEtijd])+NZ([
SolBSItijd])+NZ([SolONXtijd])+NZ([SolONEtijd])+NZ([ReistijdDEALGerelateerd])
+NZ([Algemene
uren])+NZ([Bilateraal/Coaching])+NZ([Cursus/Opleiding])+NZ([WerkOverleg])+NZ
([Reistijd Niet Client
Gerelateerd])+NZ([ProjectDEAL])+NZ([ProjectNONDEAL])+NZ([Advies Sales
Telefonisch
Consult])+NZ([Verlof/Vakantie])+NZ([Ziek])+NZ([InstMulticash])+NZ([SolMultic
ash])-NZ([Totale
werkdag])=0,0,NZ([InstBSItijd])+NZ([Overige])+NZ([InstONXtijd])+NZ([InstONEt
ijd])+NZ([SolBSItijd])+NZ([SolONXtijd])+NZ([SolONEtijd])+NZ([ReistijdDEALGer
elateerd])+NZ([Algemene
uren])+NZ([Bilateraal/Coaching])+NZ([Cursus/Opleiding])+NZ([WerkOverleg])+NZ
([Reistijd Niet Client
Gerelateerd])+NZ([ProjectDEAL])+NZ([ProjectNONDEAL])+NZ([Advies Sales
Telefonisch
Consult])+NZ([Verlof/Vakantie])+NZ([Ziek])+NZ([InstMulticash])+NZ([SolMultic
ash])-NZ([Totale werkdag])) AS [Check], IIf([Totale
Werkdag]=0,0,((NZ([TotaalDEAL])/NZ([ZakelijkeUren])))) AS PrcDEAL,
IIf([Totale Werkdag]=0,0,((NZ([TotaalNONDEAL])/NZ([ZakelijkeUren])))) AS
PrcNONDEAL, [Totale werkdag]-NZ([Ziek])-NZ([Verlof/Vakantie]) AS
ZakelijkeUren
FROM Urenregistratie
WHERE (((Urenregistratie.Engineer)=naamengineer()));

After it is filled the user clicks a button that executes the following
code where me.check is bound toe the field Check in the query

Private Sub ControleerEnSluit_Click()
Dim CheckUren
Dim Weergave As String

CheckUren = Me.Check
Weergave = Format(CheckUren, "hh:mm")


If Me.Check < 0 Then
MsgBox Weergave & " not enough declared, correct.", vbOKOnly, "Too
little"
DoCmd.CancelEvent
ElseIf Me.Check > 0 Then
MsgBox Weergave & " not enough declared, correct", vbOKOnly, "Too
much"
DoCmd.CancelEvent
ElseIf Me.Check = 0 Then
DoCmd.Close
End If
End Sub

There are 366 records (one for each day of the year), they all contain one
field containing a date.
If I fill in a record of today or later it shows (as well in the query as
in the form) the value of [check] to be zero. If I fill in a record prior to
today it SHOWS the value of the [Check] to be zero but in the query I see a
value that is NOT 0. How is this possible?

I removed every formatting but can't find the problem. Any solutions or
idea's to this (to me) unexplainable problem?

Grtz and thnx Henro
 
H

Henro

In the query (normal view) the field [Check] is empty until I click it....

Henro said:
I have a form that fills the following query with results:

SELECT Urenregistratie.ID, Urenregistratie.Engineer,
[Urenregistratie]![Datum] AS Weeknummer, Urenregistratie.Datum,
Urenregistratie.[Start Dag], Urenregistratie.[Eind dag],
Urenregistratie.Lunch, Urenregistratie.[Totaal reis], ([Totaal
reis]-[Aftrekbaar]) AS [Reistijd Werk], Urenregistratie.[Avond Start],
Urenregistratie.[Avond Eind], (NZ([Eind dag]-[Start Dag]))+(NZ([Avond
Eind])-NZ([Avond Start]))-NZ([Lunch]) AS [Totaal tijd], (NZ([Eind
dag])-NZ([Start Dag]))+(NZ([Avond Eind])-NZ([Avond
Start]))-NZ([Lunch])-NZ([Aftrekbaar]) AS [Totale werkdag],
Urenregistratie.Omschrijving, Urenregistratie.[Te werken uren], [Totale
werkdag]-[Te werken uren] AS [Plus of min], Urenregistratie.[Eigen
reistijd], IIf(NZ([Totaal Reis])<NZ([Eigen reistijd]),[Totaal
Reis],NZ([Eigen Reistijd])) AS Aftrekbaar, Urenregistratie.InstBSItijd,
Urenregistratie.InstMultiCash, Urenregistratie.Overige,
Urenregistratie.InstONXtijd, Urenregistratie.InstONEtijd,
Urenregistratie.SolBSItijd, Urenregistratie.SolMulticash,
Urenregistratie.SolONXtijd, Urenregistratie.SolONEtijd,
Urenregistratie.ReistijdDEALGerelateerd,
NZ([InstBSItijd])+NZ([Overige])+NZ([InstONXtijd])+NZ([InstONEtijd])+NZ([SolB
SItijd])+NZ([SolONXtijd])+NZ([SolONEtijd])+NZ([ProjectDEAL])+NZ([Advies
Sales Telefonisch
Consult])+NZ([Urenregistratie]![ReistijdDEALGerelateerd])+NZ([Urenregistrati
e]![InstMulticash])+NZ([Urenregistratie]![SolMulticash]) AS TotaalDEAL,
Urenregistratie.[Algemene uren], Urenregistratie.[Bilateraal/Coaching],
Urenregistratie.[Cursus/Opleiding], Urenregistratie.WerkOverleg,
Urenregistratie.[Reistijd Niet Client Gerelateerd],
Urenregistratie.ProjectDEAL, Urenregistratie.ProjectNONDEAL,
Urenregistratie.[Advies Sales Telefonisch Consult], NZ([Algemene
uren])+NZ([Bilateraal/Coaching])+NZ([Cursus/Opleiding])+NZ([WerkOverleg])+NZ
([Reistijd Niet Client Gerelateerd])+NZ([ProjectNONDEAL]) AS TotaalNONDeal,
Urenregistratie.[Verlof/Vakantie], Urenregistratie.Ziek,
NZ([Verlof/Vakantie])+NZ([Ziek]) AS TotaalPersoonlijk,
NZ([InstBSItijd])+NZ([Overige])+NZ([InstONXtijd])+NZ([InstONEtijd])+NZ([SolBSItijd])+NZ([SolONXtijd])+NZ([SolONEtijd])+NZ([ReistijdDEALGerelateerd])+NZ(
[Algemene
uren])+NZ([Bilateraal/Coaching])+NZ([Cursus/Opleiding])+NZ([WerkOverleg])+NZ
([Reistijd Niet Client
Gerelateerd])+NZ([ProjectDEAL])+NZ([ProjectNONDEAL])+NZ([Advies Sales
Telefonisch
Consult])+NZ([Verlof/Vakantie])+NZ([InstMulticash])+NZ([SolMulticash]) AS
[Controle Uren],
IIf(NZ([InstBSItijd])+NZ([Overige])+NZ([InstONXtijd])+NZ([InstONEtijd])+NZ([SolBSItijd])+NZ([SolONXtijd])+NZ([SolONEtijd])+NZ([ReistijdDEALGerelateerd])
+NZ([Algemene
uren])+NZ([Bilateraal/Coaching])+NZ([Cursus/Opleiding])+NZ([WerkOverleg])+NZ
([Reistijd Niet Client
Gerelateerd])+NZ([ProjectDEAL])+NZ([ProjectNONDEAL])+NZ([Advies Sales
Telefonisch
Consult])+NZ([Verlof/Vakantie])+NZ([Ziek])+NZ([InstMulticash])+NZ([SolMultic
ash])-NZ([Totale
werkdag])=0,0,NZ([InstBSItijd])+NZ([Overige])+NZ([InstONXtijd])+NZ([InstONEtijd])+NZ([SolBSItijd])+NZ([SolONXtijd])+NZ([SolONEtijd])+NZ([ReistijdDEALGer
elateerd])+NZ([Algemene
uren])+NZ([Bilateraal/Coaching])+NZ([Cursus/Opleiding])+NZ([WerkOverleg])+NZ
([Reistijd Niet Client
Gerelateerd])+NZ([ProjectDEAL])+NZ([ProjectNONDEAL])+NZ([Advies Sales
Telefonisch
Consult])+NZ([Verlof/Vakantie])+NZ([Ziek])+NZ([InstMulticash])+NZ([SolMultic
ash])-NZ([Totale werkdag])) AS [Check], IIf([Totale
Werkdag]=0,0,((NZ([TotaalDEAL])/NZ([ZakelijkeUren])))) AS PrcDEAL,
IIf([Totale Werkdag]=0,0,((NZ([TotaalNONDEAL])/NZ([ZakelijkeUren])))) AS
PrcNONDEAL, [Totale werkdag]-NZ([Ziek])-NZ([Verlof/Vakantie]) AS
ZakelijkeUren
FROM Urenregistratie
WHERE (((Urenregistratie.Engineer)=naamengineer()));

After it is filled the user clicks a button that executes the following
code where me.check is bound toe the field Check in the query

Private Sub ControleerEnSluit_Click()
Dim CheckUren
Dim Weergave As String

CheckUren = Me.Check
Weergave = Format(CheckUren, "hh:mm")


If Me.Check < 0 Then
MsgBox Weergave & " not enough declared, correct.", vbOKOnly, "Too
little"
DoCmd.CancelEvent
ElseIf Me.Check > 0 Then
MsgBox Weergave & " not enough declared, correct", vbOKOnly, "Too
much"
DoCmd.CancelEvent
ElseIf Me.Check = 0 Then
DoCmd.Close
End If
End Sub

There are 366 records (one for each day of the year), they all contain one
field containing a date.
If I fill in a record of today or later it shows (as well in the query as
in the form) the value of [check] to be zero. If I fill in a record prior to
today it SHOWS the value of the [Check] to be zero but in the query I see a
value that is NOT 0. How is this possible?

I removed every formatting but can't find the problem. Any solutions or
idea's to this (to me) unexplainable problem?

Grtz and thnx Henro
 
H

Henro

-5,55111512312578E-17 is the actual value

00:00 is shown in short time format.

Why is this not 0 ?

Henro

Henro said:
I have a form that fills the following query with results:

SELECT Urenregistratie.ID, Urenregistratie.Engineer,
[Urenregistratie]![Datum] AS Weeknummer, Urenregistratie.Datum,
Urenregistratie.[Start Dag], Urenregistratie.[Eind dag],
Urenregistratie.Lunch, Urenregistratie.[Totaal reis], ([Totaal
reis]-[Aftrekbaar]) AS [Reistijd Werk], Urenregistratie.[Avond Start],
Urenregistratie.[Avond Eind], (NZ([Eind dag]-[Start Dag]))+(NZ([Avond
Eind])-NZ([Avond Start]))-NZ([Lunch]) AS [Totaal tijd], (NZ([Eind
dag])-NZ([Start Dag]))+(NZ([Avond Eind])-NZ([Avond
Start]))-NZ([Lunch])-NZ([Aftrekbaar]) AS [Totale werkdag],
Urenregistratie.Omschrijving, Urenregistratie.[Te werken uren], [Totale
werkdag]-[Te werken uren] AS [Plus of min], Urenregistratie.[Eigen
reistijd], IIf(NZ([Totaal Reis])<NZ([Eigen reistijd]),[Totaal
Reis],NZ([Eigen Reistijd])) AS Aftrekbaar, Urenregistratie.InstBSItijd,
Urenregistratie.InstMultiCash, Urenregistratie.Overige,
Urenregistratie.InstONXtijd, Urenregistratie.InstONEtijd,
Urenregistratie.SolBSItijd, Urenregistratie.SolMulticash,
Urenregistratie.SolONXtijd, Urenregistratie.SolONEtijd,
Urenregistratie.ReistijdDEALGerelateerd,
NZ([InstBSItijd])+NZ([Overige])+NZ([InstONXtijd])+NZ([InstONEtijd])+NZ([SolB
SItijd])+NZ([SolONXtijd])+NZ([SolONEtijd])+NZ([ProjectDEAL])+NZ([Advies
Sales Telefonisch
Consult])+NZ([Urenregistratie]![ReistijdDEALGerelateerd])+NZ([Urenregistrati
e]![InstMulticash])+NZ([Urenregistratie]![SolMulticash]) AS TotaalDEAL,
Urenregistratie.[Algemene uren], Urenregistratie.[Bilateraal/Coaching],
Urenregistratie.[Cursus/Opleiding], Urenregistratie.WerkOverleg,
Urenregistratie.[Reistijd Niet Client Gerelateerd],
Urenregistratie.ProjectDEAL, Urenregistratie.ProjectNONDEAL,
Urenregistratie.[Advies Sales Telefonisch Consult], NZ([Algemene
uren])+NZ([Bilateraal/Coaching])+NZ([Cursus/Opleiding])+NZ([WerkOverleg])+NZ
([Reistijd Niet Client Gerelateerd])+NZ([ProjectNONDEAL]) AS TotaalNONDeal,
Urenregistratie.[Verlof/Vakantie], Urenregistratie.Ziek,
NZ([Verlof/Vakantie])+NZ([Ziek]) AS TotaalPersoonlijk,
NZ([InstBSItijd])+NZ([Overige])+NZ([InstONXtijd])+NZ([InstONEtijd])+NZ([SolBSItijd])+NZ([SolONXtijd])+NZ([SolONEtijd])+NZ([ReistijdDEALGerelateerd])+NZ(
[Algemene
uren])+NZ([Bilateraal/Coaching])+NZ([Cursus/Opleiding])+NZ([WerkOverleg])+NZ
([Reistijd Niet Client
Gerelateerd])+NZ([ProjectDEAL])+NZ([ProjectNONDEAL])+NZ([Advies Sales
Telefonisch
Consult])+NZ([Verlof/Vakantie])+NZ([InstMulticash])+NZ([SolMulticash]) AS
[Controle Uren],
IIf(NZ([InstBSItijd])+NZ([Overige])+NZ([InstONXtijd])+NZ([InstONEtijd])+NZ([SolBSItijd])+NZ([SolONXtijd])+NZ([SolONEtijd])+NZ([ReistijdDEALGerelateerd])
+NZ([Algemene
uren])+NZ([Bilateraal/Coaching])+NZ([Cursus/Opleiding])+NZ([WerkOverleg])+NZ
([Reistijd Niet Client
Gerelateerd])+NZ([ProjectDEAL])+NZ([ProjectNONDEAL])+NZ([Advies Sales
Telefonisch
Consult])+NZ([Verlof/Vakantie])+NZ([Ziek])+NZ([InstMulticash])+NZ([SolMultic
ash])-NZ([Totale
werkdag])=0,0,NZ([InstBSItijd])+NZ([Overige])+NZ([InstONXtijd])+NZ([InstONEtijd])+NZ([SolBSItijd])+NZ([SolONXtijd])+NZ([SolONEtijd])+NZ([ReistijdDEALGer
elateerd])+NZ([Algemene
uren])+NZ([Bilateraal/Coaching])+NZ([Cursus/Opleiding])+NZ([WerkOverleg])+NZ
([Reistijd Niet Client
Gerelateerd])+NZ([ProjectDEAL])+NZ([ProjectNONDEAL])+NZ([Advies Sales
Telefonisch
Consult])+NZ([Verlof/Vakantie])+NZ([Ziek])+NZ([InstMulticash])+NZ([SolMultic
ash])-NZ([Totale werkdag])) AS [Check], IIf([Totale
Werkdag]=0,0,((NZ([TotaalDEAL])/NZ([ZakelijkeUren])))) AS PrcDEAL,
IIf([Totale Werkdag]=0,0,((NZ([TotaalNONDEAL])/NZ([ZakelijkeUren])))) AS
PrcNONDEAL, [Totale werkdag]-NZ([Ziek])-NZ([Verlof/Vakantie]) AS
ZakelijkeUren
FROM Urenregistratie
WHERE (((Urenregistratie.Engineer)=naamengineer()));

After it is filled the user clicks a button that executes the following
code where me.check is bound toe the field Check in the query

Private Sub ControleerEnSluit_Click()
Dim CheckUren
Dim Weergave As String

CheckUren = Me.Check
Weergave = Format(CheckUren, "hh:mm")


If Me.Check < 0 Then
MsgBox Weergave & " not enough declared, correct.", vbOKOnly, "Too
little"
DoCmd.CancelEvent
ElseIf Me.Check > 0 Then
MsgBox Weergave & " not enough declared, correct", vbOKOnly, "Too
much"
DoCmd.CancelEvent
ElseIf Me.Check = 0 Then
DoCmd.Close
End If
End Sub

There are 366 records (one for each day of the year), they all contain one
field containing a date.
If I fill in a record of today or later it shows (as well in the query as
in the form) the value of [check] to be zero. If I fill in a record prior to
today it SHOWS the value of the [Check] to be zero but in the query I see a
value that is NOT 0. How is this possible?

I removed every formatting but can't find the problem. Any solutions or
idea's to this (to me) unexplainable problem?

Grtz and thnx Henro
 
H

Henro

I finally solved it using CVdate() on the check field in the query.

Thought I might let you know



Henro said:
I have a form that fills the following query with results:

SELECT Urenregistratie.ID, Urenregistratie.Engineer,
[Urenregistratie]![Datum] AS Weeknummer, Urenregistratie.Datum,
Urenregistratie.[Start Dag], Urenregistratie.[Eind dag],
Urenregistratie.Lunch, Urenregistratie.[Totaal reis], ([Totaal
reis]-[Aftrekbaar]) AS [Reistijd Werk], Urenregistratie.[Avond Start],
Urenregistratie.[Avond Eind], (NZ([Eind dag]-[Start Dag]))+(NZ([Avond
Eind])-NZ([Avond Start]))-NZ([Lunch]) AS [Totaal tijd], (NZ([Eind
dag])-NZ([Start Dag]))+(NZ([Avond Eind])-NZ([Avond
Start]))-NZ([Lunch])-NZ([Aftrekbaar]) AS [Totale werkdag],
Urenregistratie.Omschrijving, Urenregistratie.[Te werken uren], [Totale
werkdag]-[Te werken uren] AS [Plus of min], Urenregistratie.[Eigen
reistijd], IIf(NZ([Totaal Reis])<NZ([Eigen reistijd]),[Totaal
Reis],NZ([Eigen Reistijd])) AS Aftrekbaar, Urenregistratie.InstBSItijd,
Urenregistratie.InstMultiCash, Urenregistratie.Overige,
Urenregistratie.InstONXtijd, Urenregistratie.InstONEtijd,
Urenregistratie.SolBSItijd, Urenregistratie.SolMulticash,
Urenregistratie.SolONXtijd, Urenregistratie.SolONEtijd,
Urenregistratie.ReistijdDEALGerelateerd,
NZ([InstBSItijd])+NZ([Overige])+NZ([InstONXtijd])+NZ([InstONEtijd])+NZ([SolB
SItijd])+NZ([SolONXtijd])+NZ([SolONEtijd])+NZ([ProjectDEAL])+NZ([Advies
Sales Telefonisch
Consult])+NZ([Urenregistratie]![ReistijdDEALGerelateerd])+NZ([Urenregistrati
e]![InstMulticash])+NZ([Urenregistratie]![SolMulticash]) AS TotaalDEAL,
Urenregistratie.[Algemene uren], Urenregistratie.[Bilateraal/Coaching],
Urenregistratie.[Cursus/Opleiding], Urenregistratie.WerkOverleg,
Urenregistratie.[Reistijd Niet Client Gerelateerd],
Urenregistratie.ProjectDEAL, Urenregistratie.ProjectNONDEAL,
Urenregistratie.[Advies Sales Telefonisch Consult], NZ([Algemene
uren])+NZ([Bilateraal/Coaching])+NZ([Cursus/Opleiding])+NZ([WerkOverleg])+NZ
([Reistijd Niet Client Gerelateerd])+NZ([ProjectNONDEAL]) AS TotaalNONDeal,
Urenregistratie.[Verlof/Vakantie], Urenregistratie.Ziek,
NZ([Verlof/Vakantie])+NZ([Ziek]) AS TotaalPersoonlijk,
NZ([InstBSItijd])+NZ([Overige])+NZ([InstONXtijd])+NZ([InstONEtijd])+NZ([SolBSItijd])+NZ([SolONXtijd])+NZ([SolONEtijd])+NZ([ReistijdDEALGerelateerd])+NZ(
[Algemene
uren])+NZ([Bilateraal/Coaching])+NZ([Cursus/Opleiding])+NZ([WerkOverleg])+NZ
([Reistijd Niet Client
Gerelateerd])+NZ([ProjectDEAL])+NZ([ProjectNONDEAL])+NZ([Advies Sales
Telefonisch
Consult])+NZ([Verlof/Vakantie])+NZ([InstMulticash])+NZ([SolMulticash]) AS
[Controle Uren],
IIf(NZ([InstBSItijd])+NZ([Overige])+NZ([InstONXtijd])+NZ([InstONEtijd])+NZ([SolBSItijd])+NZ([SolONXtijd])+NZ([SolONEtijd])+NZ([ReistijdDEALGerelateerd])
+NZ([Algemene
uren])+NZ([Bilateraal/Coaching])+NZ([Cursus/Opleiding])+NZ([WerkOverleg])+NZ
([Reistijd Niet Client
Gerelateerd])+NZ([ProjectDEAL])+NZ([ProjectNONDEAL])+NZ([Advies Sales
Telefonisch
Consult])+NZ([Verlof/Vakantie])+NZ([Ziek])+NZ([InstMulticash])+NZ([SolMultic
ash])-NZ([Totale
werkdag])=0,0,NZ([InstBSItijd])+NZ([Overige])+NZ([InstONXtijd])+NZ([InstONEtijd])+NZ([SolBSItijd])+NZ([SolONXtijd])+NZ([SolONEtijd])+NZ([ReistijdDEALGer
elateerd])+NZ([Algemene
uren])+NZ([Bilateraal/Coaching])+NZ([Cursus/Opleiding])+NZ([WerkOverleg])+NZ
([Reistijd Niet Client
Gerelateerd])+NZ([ProjectDEAL])+NZ([ProjectNONDEAL])+NZ([Advies Sales
Telefonisch
Consult])+NZ([Verlof/Vakantie])+NZ([Ziek])+NZ([InstMulticash])+NZ([SolMultic
ash])-NZ([Totale werkdag])) AS [Check], IIf([Totale
Werkdag]=0,0,((NZ([TotaalDEAL])/NZ([ZakelijkeUren])))) AS PrcDEAL,
IIf([Totale Werkdag]=0,0,((NZ([TotaalNONDEAL])/NZ([ZakelijkeUren])))) AS
PrcNONDEAL, [Totale werkdag]-NZ([Ziek])-NZ([Verlof/Vakantie]) AS
ZakelijkeUren
FROM Urenregistratie
WHERE (((Urenregistratie.Engineer)=naamengineer()));

After it is filled the user clicks a button that executes the following
code where me.check is bound toe the field Check in the query

Private Sub ControleerEnSluit_Click()
Dim CheckUren
Dim Weergave As String

CheckUren = Me.Check
Weergave = Format(CheckUren, "hh:mm")


If Me.Check < 0 Then
MsgBox Weergave & " not enough declared, correct.", vbOKOnly, "Too
little"
DoCmd.CancelEvent
ElseIf Me.Check > 0 Then
MsgBox Weergave & " not enough declared, correct", vbOKOnly, "Too
much"
DoCmd.CancelEvent
ElseIf Me.Check = 0 Then
DoCmd.Close
End If
End Sub

There are 366 records (one for each day of the year), they all contain one
field containing a date.
If I fill in a record of today or later it shows (as well in the query as
in the form) the value of [check] to be zero. If I fill in a record prior to
today it SHOWS the value of the [Check] to be zero but in the query I see a
value that is NOT 0. How is this possible?

I removed every formatting but can't find the problem. Any solutions or
idea's to this (to me) unexplainable problem?

Grtz and thnx Henro
 
J

John Vinson

-5,55111512312578E-17 is the actual value

00:00 is shown in short time format.

Why is this not 0 ?

A Date/Time value is stored as a Double Float number. Floats *always*
have roundoff error - subtracting 13.25 from 13.25 will *not*
necessarily give you zero, since 13.25 is stored *as an
approximation*, with about 17 decimal places accuracy.

I'd suggest using the Round() function to truncate any Float
calculation to a desired number of decimals.
 
Top