Buon giorno a tutti.
Ho il seguente scenario.

Questa è la query su cui ho basato la seguente maschera:
SELECT TblAssenze_Servizio.*
FROM TblAnagrafica LEFT JOIN TblAssenze_Servizio ON TblAnagrafica.ID_Anagrafica = TblAssenze_Servizio.ID_Anagrafica;

Ho un problema che ad oggi, nonostante le molteplici prove non riesco a risolvere e cioè:
Sulla maschera basata sulla query summenzionata ho creato una casella di testo, non associata che deve contarmi i giorni di malattia del dipendente selezionato, ma ottengo sempre questo messaggio di errore:

questa è la funzione che utilizzo ora:
=DLookUp("Giorni";"Query_Conta_Assenze";"[ID_Anagrafica]=" & Nz([ID_Anagrafica];""))
Ho fatto altrettante prove, utilizzando le funzioni sottostanti , ma nessuna di queste ha prodotto il risultato sperato, ma hanno dato sempre diversi messaggi di errore, anche questo:#TIPO ecc.
=Nz(DLookUp("Giorni";"Query_Conta_Assenze";"[ID_Anagrafica]=" & ([ID_Anagrafica];""));0)
=IIf(“Giorni”>0;DLookUp("Giorni"," Query_Conta_Assenze ","[ID_Anagrafica]= " & [ID_Anagrafica]),"")
=Nz(DLookUp("Giorni";"Query_Conta_Assenze";"[ID_Anagrafica]=5"));0)
La query su cui è basata la funzione DLookUp è questa:
SELECT DISTINCT TblAnagrafica.ID_Anagrafica, TblAnagrafica.Matricola, TblAnagrafica.Grado, TblAnagrafica.Cognome, TblAnagrafica.Nome, TotaliAssenze.Anno, TotaliAssenze.Giorni
FROM TblAnagrafica RIGHT JOIN (SELECT ID_Anagrafica, Year([Dal]) AS Anno, Sum(IIf(Year([Dal])=Year([Al]),DateDiff("d",[Dal],[Al])+1,DateDiff("d",[Dal],DateSerial(Year([Dal]),12,31))+1)) AS Giorni
FROM TblAssenze_Servizio
GROUP BY ID_Anagrafica, Year([Dal])
UNION
SELECT ID_Anagrafica, Year([Al]) AS Anno, Sum(IIf(Year([Al])=Year([Dal]),0,DateDiff("d",DateSerial(Year([Al]),1,1),[Al])+1)) AS Giorni
FROM TblAssenze_Servizio
GROUP BY ID_Anagrafica, Year([Al])) AS TotaliAssenze ON TblAnagrafica.ID_Anagrafica = TotaliAssenze.ID_Anagrafica
WHERE (((TotaliAssenze.Anno)=Year(Now())) AND ((TotaliAssenze.Giorni)>0))
ORDER BY TblAnagrafica.Cognome;
Chiedo il vostro aiuto per poter sistemare la funzione in modo da visualizzare zero(0) in caso di assenza di giorni di malattia e di conteggiarli in caso di presenza di quest'ultimi.
Spero di essere stato chiaro.
Ringrazio chi mi aiuta in questo.
Ciao, Nicola.