Bonjour,
J'ai le problème suivant :
j'aimerai pouvoir soustraire 30 jours à la date du jour !
Malheuresuement j'ai trouvé plein de méthode très simple pour ajouter 30 jours... mais rien pour soustraire !
Merci d'avance de votre aide.
Version imprimable
Bonjour,
J'ai le problème suivant :
j'aimerai pouvoir soustraire 30 jours à la date du jour !
Malheuresuement j'ai trouvé plein de méthode très simple pour ajouter 30 jours... mais rien pour soustraire !
Merci d'avance de votre aide.
Tu n'as qu'à faire -30 au lieu de 30.
J'en suis arrivé finalement a la même conclusion j'ai donc créé la méthode suivante :
Et je lui passe en paramètre la date du jour (dat.today) et 30 et lui il me retourne la date du jour (j'ai contrôlé en imprimant le résultat à l'écran dans un label ! :(Code:
1
2
3
4
5 Private Function chgDate (ByVal dat As Date, ByVal nbrJour As Integer) As Date dat.AddDays(- nbrJour) return dat End Function
tu ne peux pas modifier une variable passée en "ByVal"
remplace "byval" par "byref"
Code:
1
2
3
4
5
6 Private Function chgDate (ByRef dat As Date, ByVal nbrJour As Integer) As Date dat.AddDays(- nbrJour) return dat End Function
J'ai fait comme ca... mais bon ce qui m'inquiète grandement c'est que même ainsi et en ajoutant 30 au lieu de les soustraires... je ne récupère que la date du jour.... :(
Bon je vais mettre l'appel de la fonction, peut être qu'avec la fatigue je ne vois plus une erreur toute bête
J'ai déclaré deux variable :
L'appel de la fonction :Code:
1
2 Protected datRet As Date Protected datRet2 As Date
La fonction :Code:
1
2 datRet = chgDate(Date.Today, 10) datRet2 = chgDate(Date.Today, 30)
Alors voilà, là je sais plus quoi essayer... :cry:Code:
1
2
3
4
5
6
7
8 Private Function chgDate(ByVal dat As Date, ByVal nbre As Integer) As Date Dim newDate As Date newDate = dat newDate.AddDays(-nbre) Return newDate End Function
Commes le disait pcdj, il faut que tu ais ça comme code:
Code:
1
2
3
4
5
6
7
8 Private Function chgDate(ByRef dat As Date, ByVal nbre As Integer) As Date Dim newDate As Date newDate = dat newDate.AddDays(-nbre) Return newDate End Function
Change rien et si j'avais pas passer par Ref mais par Val c'est car pour finir dans la méthode j'utilise une nouvelle variable et c'est elle que je modifie et retourne et donc pas la variable qu'il recoit en paramètre d'entrée ! ;)
Bref ca fonctionne ni en aditionnant ni en soustrayant... je desespère... :(
essaye ça :
Code:
1
2
3
4
5
6
7
8 Private Function chgDate(ByVal dat As Date, ByVal nbre As Integer) As Date Dim newDate As Date newDate = dat.AddDays(-nbre) Return newDate End Function
ou plus court :
Code:
1
2
3
4 Private Function chgDate(ByVal dat As Date, ByVal nbre As Integer) As Date Return dat.AddDays(-nbre) End Function
Mon sauveur !!!!!!!! MERCI !!!!!!!!!!
Ca fonctionne.. merci vraiment !!! Au moins un soucis un moins... (en tout cas pour le moment.. )