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

Macros et VBA Excel Discussion :

recupere une valeur par rapport a une date [XL-2007]


Sujet :

Macros et VBA Excel

  1. #1
    Membre éclairé
    Homme Profil pro
    retraite
    Inscrit en
    Avril 2010
    Messages
    325
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : Espagne

    Informations professionnelles :
    Activité : retraite
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2010
    Messages : 325
    Par défaut recupere une valeur par rapport a une date
    Bonsoir
    j'ai une extbox dans un userform dans laquelle j'ai une date, (31/01/50), est il possible d'avoir dans une textbox voisine d'avoir la valeur (aujourd'hui - 31/01/50).
    je n'est aucune idee.
    merci a vous
    chris

  2. #2
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Regarde l'aide sue DateDiff

  3. #3
    Membre éclairé
    Homme Profil pro
    retraite
    Inscrit en
    Avril 2010
    Messages
    325
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : Espagne

    Informations professionnelles :
    Activité : retraite
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2010
    Messages : 325
    Par défaut recuperer valeur / rapport a une date
    je seche sur cette fonction.

  4. #4
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Pourtant c'est bien expliqué sur l'aide vba et avec des exemples. essaies encore

  5. #5
    Membre éclairé
    Homme Profil pro
    retraite
    Inscrit en
    Avril 2010
    Messages
    325
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : Espagne

    Informations professionnelles :
    Activité : retraite
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2010
    Messages : 325
    Par défaut recuperer valeur / rapport a une date
    je suis arrive a avoir la bonne valeur par rapport a la date donnee, mais c'est dans ma feuille, j'autais aime voir cette valeur dans une textbox de mon userform.
    chris

  6. #6
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Je tomberai dans ton piège cette fois
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Private Sub TextBox1_AfterUpdate()
    If IsDate(Me.TextBox1.Value) Then
       Me.TextBox2.Value = DateDiff("d", Date, Me.TextBox1.Value)
    Else
       Me.TextBox2.Value = ""
    End If
    End Sub
    "d", pour jours
    "m", pour mois
    "yyyy" pour années
    ...
    utilise F1

  7. #7
    Membre éclairé
    Homme Profil pro
    retraite
    Inscrit en
    Avril 2010
    Messages
    325
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : Espagne

    Informations professionnelles :
    Activité : retraite
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2010
    Messages : 325
    Par défaut recuperer valeur / rapport a une date
    bonsoir
    je ne cherchais nullement a te pieger, je ne sais simplement comment faire pour recupere une valeur d'une cellule, dans une textbox d'un userform.
    merci pour tes infos
    cordialement chris.

  8. #8
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Ta question initiale était:
    j'ai une Textbox dans un userform dans laquelle j'ai une date, (31/01/50), est il possible d'avoir dans une textbox voisine d'avoir la valeur (aujourd'hui - 31/01/50).
    J'avais proposé un code, dès que la date de TextBox1 est mise à jour, dans TextBox2 tu récupère le nombre de jour entre aujourd'hui et la date contenue dans TextBox1

  9. #9
    Membre éclairé
    Homme Profil pro
    retraite
    Inscrit en
    Avril 2010
    Messages
    325
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : Espagne

    Informations professionnelles :
    Activité : retraite
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2010
    Messages : 325
    Par défaut recuperer valeur / rapport a une date
    j'ai mis le code mais il ne fonctionne pas, peu etre que je l'est mal transcris.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Private Sub Datenaiss_AfterUpdate()
    If IsDate(Me.Datenaiss.Value) Then
       Me.Age.Value = DateDiff("YY", Date, Me.Datenaiss.Value)
    Else
       Me.Age.Value = "YY"
    End If
    End Sub
    je ne cherche a piege personne, j'essai d'apprendre, mais seul ce n'est pas facile. merci a toi pour toutes tes bonnes infos. et biensur a ce site, ou il y a une multitude d'infos, mais pas toujours facile de si retrouver

  10. #10
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Je retire ce que j'avais dis concernant le piège. désolé
    Une question, As tu consulté l'aide sur DateDiff?
    si oui, tu n'aurais pas mis "YY"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Private Sub Datenaiss_AfterUpdate()
    If IsDate(Me.Datenaiss.Value) Then
       Me.Age.Value = DateDiff("yyyy", Me.Datenaiss.Value, Date)
    Else
       Me.Age.Value = ""
    End If
    End Sub
    ce code est à mettre dans le module de ton userform, évènement afterupdate de ton textbox datenaiss

  11. #11
    Membre éclairé
    Homme Profil pro
    retraite
    Inscrit en
    Avril 2010
    Messages
    325
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : Espagne

    Informations professionnelles :
    Activité : retraite
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2010
    Messages : 325
    Par défaut recuperer valeur / rapport a une date
    j'ai regarder la fonction datediff mais je n'avais pas vu ce que cherchais pour l'integrer dans un userform.
    Pour ce qui est de ta reponse.
    parfait cela marche tres bien, sauf que j'ai le signe negatif, mais je m'en accommoderais.
    je pensais comme dans une feuille que de mettre aa ou yy suffisait.
    chapeau a toi, je constate que que connais enormement de fonction excel.
    merci a toi pour toutes les infos et codes que tu m'as fourni depuis quelques semaines.
    cordialement
    chris qui ne fait qu' apprendre de jour en jour.

  12. #12
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    DateDiff("yyyy", DateDebut, DtaeFin)
    Si DateFin > DateDebut alors DateDiff > 0 et vice versa

    Pour moi j'avais deviné que Datenaiss est toujours inférieure à aujourd'hui.

    Sinon, une autre possibilité, c'est de créer sa propre fonction de calcul d'âge et de faire appel à elle (exemple, j'ai pris la sortie comme texte)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Private Function fctAge(ByVal DN As Variant) As String
    If IsDate(DN) Then
      fctAge = Cstr(DateDiff("yyyy", DN, Date))
    Else
       fctAge = ""
    End If
    End Function
     
    Private Sub Datenaiss_AfterUpdate()
    Me.Age.Value = fctAge(Me.Datenaiss.Value)
    End Sub

  13. #13
    Membre éclairé
    Homme Profil pro
    retraite
    Inscrit en
    Avril 2010
    Messages
    325
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : Espagne

    Informations professionnelles :
    Activité : retraite
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2010
    Messages : 325
    Par défaut recuperer valeur / rapport a une date
    pile poil ce code.
    cordialement
    chris

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

Discussions similaires

  1. [MySQL] Vérifier une valeur par rapport a une BDD
    Par black-hat dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 07/06/2012, 10h55
  2. Recuperer une entrée par rapport a sa date
    Par bastian06n dans le forum Requêtes
    Réponses: 5
    Dernier message: 02/09/2010, 17h36
  3. Réponses: 3
    Dernier message: 22/08/2010, 18h40
  4. [XL-2007] Recherche d'une position par rapport a une valeur
    Par 0x44-0x43-0x53-0x43 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 03/02/2010, 12h17
  5. Afficher une valeur par rapport à une autre valeur
    Par alexiisme dans le forum Modélisation
    Réponses: 5
    Dernier message: 24/08/2007, 13h43

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