aBonjour,
J'ai crée 2 fonctions permettant de renvoyer un entier(de 0 à 2) en fonction de certains critères sur des dates. Jusque là, pas de soucis.
En revanche quand dans 1 formulaire ou 1 état je souhaite faire la somme de ces résultats, çà ne fonctionne pas et "#Erreur" apparait.
Pour + de clarté et probablement le repérage de mon erreur, voici mes fonctions:
Dim Sunset As Date, HDécol As Date, HATT As Date
Public Function VolEnSoiree(Sunset, HDécol, HATT) As Integer
If IsEmpty(HDécol) Or IsEmpty(HATT) Then
VolEnSoiree = 0
ElseIf HATT > Sunset And HATT <= DateAdd("n", 30, Sunset) Then
VolEnSoiree = 1
Else
VolEnSoiree = 0
End If
End Function
Public Function VolDeNuit(Sunset, HDécol, HATT) As Integer
If IsEmpty(HDécol) Or IsEmpty(HATT) Then
VolDeNuit = 0
ElseIf HDécol < #9:00:00 AM# And HATT >= DateAdd("n", 30, Sunset) Then
VolDeNuit = 2
ElseIf HDécol < #9:00:00 AM# Or HATT >= DateAdd("n", 30, Sunset) Then
VolDeNuit = 1
Else
VolDeNuit = 0
End If
End Function
==>> Les sommes que je veux faire sont simplement:
Somme([VolDeNuit]) & Somme([VolEnSoiree])
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Eric
Bonjour es_13,
Tes 2 fonctions doivent être affectées à des contrôles de formulaire ou sont des champs calculés dans une requête.
Ex de champs calculés dans une requête: Soir: VolEnSoiree([Heure1];[Heure2];[Heure3]) idem pour le vol de nuit Nuit: VolDeNuit([Heure1];[Heure2];[Heure3])
A l'aide de cette requête tu construis ton formulaire et en pied tu mets 2 champs indépendants :TotalNuit, TotalSoiree pour lesquels la source sera respectivement: =somme([Nuit]) et = somme([Soiree)] ou globalement 1 champ Total dont la source sera :=Somme([Nuit]) + somme([Soiree])
De même s'il s'agit de champs indépendants de formulaire (contrôles TextBox) Nom txtNuit, source: =VolDeNuit([Heure1];[Heure2];[Heure3]) Nom txtSoiree, source: : =VolEnSoiree([Heure1];[Heure2];[Heure3]) (tu peux masquer ces contrôles si tu le souhaites)
et en pied de formulaire, TotalNuit: =Somme(VolDeNuit([Heure1];[Heure2];[Heure3])) TotalSoiree: =Somme(VolEnSoiree([Heure1];[Heure2];[Heure3]))
==>> Les sommes que je veux faire sont simplement: Somme([VolDeNuit]) & Somme([VolEnSoiree])
Merci d'avance pour votre aide
Bonjour es_13,
Tes 2 fonctions doivent être affectées à des contrôles de formulaire ou
sont des champs calculés dans une requête.
Ex de champs calculés dans une requête:
Soir: VolEnSoiree([Heure1];[Heure2];[Heure3]) idem pour le vol de nuit
Nuit: VolDeNuit([Heure1];[Heure2];[Heure3])
A l'aide de cette requête tu construis ton formulaire et en pied tu mets
2 champs indépendants :TotalNuit, TotalSoiree pour lesquels la source
sera respectivement:
=somme([Nuit]) et = somme([Soiree)] ou globalement 1 champ Total dont la
source sera :=Somme([Nuit]) + somme([Soiree])
De même s'il s'agit de champs indépendants de formulaire (contrôles
TextBox)
Nom txtNuit, source: =VolDeNuit([Heure1];[Heure2];[Heure3])
Nom txtSoiree, source: : =VolEnSoiree([Heure1];[Heure2];[Heure3])
(tu peux masquer ces contrôles si tu le souhaites)
et en pied de formulaire,
TotalNuit: =Somme(VolDeNuit([Heure1];[Heure2];[Heure3]))
TotalSoiree: =Somme(VolEnSoiree([Heure1];[Heure2];[Heure3]))
Tes 2 fonctions doivent être affectées à des contrôles de formulaire ou sont des champs calculés dans une requête.
Ex de champs calculés dans une requête: Soir: VolEnSoiree([Heure1];[Heure2];[Heure3]) idem pour le vol de nuit Nuit: VolDeNuit([Heure1];[Heure2];[Heure3])
A l'aide de cette requête tu construis ton formulaire et en pied tu mets 2 champs indépendants :TotalNuit, TotalSoiree pour lesquels la source sera respectivement: =somme([Nuit]) et = somme([Soiree)] ou globalement 1 champ Total dont la source sera :=Somme([Nuit]) + somme([Soiree])
De même s'il s'agit de champs indépendants de formulaire (contrôles TextBox) Nom txtNuit, source: =VolDeNuit([Heure1];[Heure2];[Heure3]) Nom txtSoiree, source: : =VolEnSoiree([Heure1];[Heure2];[Heure3]) (tu peux masquer ces contrôles si tu le souhaites)
et en pied de formulaire, TotalNuit: =Somme(VolDeNuit([Heure1];[Heure2];[Heure3])) TotalSoiree: =Somme(VolEnSoiree([Heure1];[Heure2];[Heure3]))
==>> Les sommes que je veux faire sont simplement: Somme([VolDeNuit]) & Somme([VolEnSoiree])
Merci d'avance pour votre aide
es_13
Merci bcp Eric, je m'étais "embrouillée les pinceaux" entre les noms des controles dans le formulaire et les noms donnés à mes expressions dans la requete de référence. Mille mercis pour cette réponse rapide & éclairée. 1 regard extérieur est souvent bien nécessaire, surtout qd on se lance dans Access. Cordialement, es_13
Merci bcp Eric, je m'étais "embrouillée les pinceaux" entre les noms des controles dans le formulaire et les noms donnés à mes expressions dans la requete de référence.
Mille mercis pour cette réponse rapide & éclairée. 1 regard extérieur est souvent bien nécessaire, surtout qd on se lance dans Access.
Cordialement, es_13
Merci bcp Eric, je m'étais "embrouillée les pinceaux" entre les noms des controles dans le formulaire et les noms donnés à mes expressions dans la requete de référence. Mille mercis pour cette réponse rapide & éclairée. 1 regard extérieur est souvent bien nécessaire, surtout qd on se lance dans Access. Cordialement, es_13