IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

[VB.NET][Asp.net]Soustration de date


Sujet :

ASP.NET

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2006
    Messages : 43
    Points : 26
    Points
    26
    Par défaut [VB.NET][Asp.net]Soustration de date
    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.

  2. #2
    Membre éclairé
    Avatar de efficks
    Inscrit en
    Septembre 2005
    Messages
    712
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 712
    Points : 776
    Points
    776
    Par défaut
    Tu n'as qu'à faire -30 au lieu de 30.
    Avant de poster : FAQ, tutos, rechercher, google, ... Après :
    Merci

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2006
    Messages : 43
    Points : 26
    Points
    26
    Par défaut
    J'en suis arrivé finalement a la même conclusion j'ai donc créé la méthode suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    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 !

  4. #4
    Membre actif
    Profil pro
    Inscrit en
    Août 2004
    Messages
    270
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2004
    Messages : 270
    Points : 270
    Points
    270
    Par défaut
    tu ne peux pas modifier une variable passée en "ByVal"
    remplace "byval" par "byref"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2006
    Messages : 43
    Points : 26
    Points
    26
    Par défaut
    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....

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2006
    Messages : 43
    Points : 26
    Points
    26
    Par défaut
    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 :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Protected datRet As Date
    Protected datRet2 As Date
    L'appel de la fonction :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    datRet = chgDate(Date.Today, 10)
    datRet2 = chgDate(Date.Today, 30)
    La fonction :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    Alors voilà, là je sais plus quoi essayer...

  7. #7
    Membre expérimenté

    Homme Profil pro
    kiné passionné de dev
    Inscrit en
    Mars 2006
    Messages
    1 570
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : kiné passionné de dev

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 570
    Points : 1 738
    Points
    1 738
    Billets dans le blog
    1
    Par défaut
    Commes le disait pcdj, il faut que tu ais ça comme code:

    Code VB.Net : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    Petit poulain devient grand de jour en jour...

    Petit Poulain, ce n'est que pour les intimes!

  8. #8
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2006
    Messages : 43
    Points : 26
    Points
    26
    Par défaut
    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...

  9. #9
    Membre actif
    Profil pro
    Inscrit en
    Août 2004
    Messages
    270
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2004
    Messages : 270
    Points : 270
    Points
    270
    Par défaut
    essaye ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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

  10. #10
    Membre actif
    Profil pro
    Inscrit en
    Août 2004
    Messages
    270
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2004
    Messages : 270
    Points : 270
    Points
    270
    Par défaut
    ou plus court :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Private Function chgDate(ByVal dat As Date, ByVal nbre As Integer) As Date
          Return dat.AddDays(-nbre)
    End Function

  11. #11
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2006
    Messages : 43
    Points : 26
    Points
    26
    Par défaut
    Mon sauveur !!!!!!!! MERCI !!!!!!!!!!

    Ca fonctionne.. merci vraiment !!! Au moins un soucis un moins... (en tout cas pour le moment.. )

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 31/07/2009, 02h27
  2. Participez à la F.A.Q .NET ASP.NET Delphi.NET
    Par Jérôme Lambert dans le forum Contribuez
    Réponses: 0
    Dernier message: 05/12/2008, 00h00
  3. Participez à la F.A.Q .NET ASP.NET VB.NET
    Par Jérôme Lambert dans le forum Contribuez
    Réponses: 0
    Dernier message: 05/12/2008, 00h00

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo