VBA Access : Différence de dates
Résolu
arzawe
Messages postés
71
Statut
Membre
-
blux Messages postés 2058 Date d'inscription Statut Modérateur Dernière intervention -
blux Messages postés 2058 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
Je ne comprends pas pourquoi mon code ne fontionne pas :
Dim DatDeb
Dim DatFin
Dim Duree As Variant
Dim bdd As Database
Dim CritSel As TableDef
Dim RstDate As Recordset
Set bdd = CurrentDb
Set CritSel = bdd.TableDefs("Critère de sélection")
Set RstDate = bdd.OpenRecordset("Critère de sélection", dbOpenDynaset)
Set DatDeb = RstDate![Date de début]
Set DatFin = RstDate![Date de fin]
Duree = DateDiff("j", DatDeb, DatFin)+1
MsgBox Duree
Il me renvoie le message suivant :
Erreur d'exécution 5
Argument ou appel à procédure incorrect
Je ne comprends pas, c'est pourtant une fonction que j'utilise souvent. C'est peutêtre parce que c'est lundi et que je suis mal réveillée... :-)
--
Arzawe
Je ne comprends pas pourquoi mon code ne fontionne pas :
Dim DatDeb
Dim DatFin
Dim Duree As Variant
Dim bdd As Database
Dim CritSel As TableDef
Dim RstDate As Recordset
Set bdd = CurrentDb
Set CritSel = bdd.TableDefs("Critère de sélection")
Set RstDate = bdd.OpenRecordset("Critère de sélection", dbOpenDynaset)
Set DatDeb = RstDate![Date de début]
Set DatFin = RstDate![Date de fin]
Duree = DateDiff("j", DatDeb, DatFin)+1
MsgBox Duree
Il me renvoie le message suivant :
Erreur d'exécution 5
Argument ou appel à procédure incorrect
Je ne comprends pas, c'est pourtant une fonction que j'utilise souvent. C'est peutêtre parce que c'est lundi et que je suis mal réveillée... :-)
--
Arzawe
Configuration: Windows XP Internet Explorer 6.0
6 réponses
-
Salut,
pourquoi tu mets "set DatDeb" ? le set indique que l'on est en présence d'un objet et non d'une variable...
pourquoi n'as-tu pas déclaré datedeb en date ? dans ce cas, c'est un variant...
l'erreur est sur quelle ligne ?
-
bonjour,
Dans ton code tu n'as pas déclaré le type de variable de :
Dim DatDeb ???
Dim DatFin ???
Ca vient peut être de là.
;o)
Polux -
Si je remets as date après les DatDeb et DatFin, il me dis pour set DatFin : Objet requis
Le message d'erreur initial était sur
Duree = DateDiff("j", DatDeb, DatFin)+1
-
garde ton code original et remplace juste le "j" par "d".
parfois il est tres idiot dans les correspondances francais anglais. -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Bon, je vous remercie tous.
J'ai enlevé les set devant DatDeb et DatFin, et j'ai remplacé "j" par "d", et ça marche.
Merci, merci, merci !!! -
lol, ben ça aurai été le diable que ça ne marche pas ... il a fallu s'y mettre à 3 ...
bon courage
;o)
Polux