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 :

Comment écrire la valeur d'une variable dans une cellule


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Inscrit en
    Août 2010
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Août 2010
    Messages : 22
    Points : 7
    Points
    7
    Par défaut Comment écrire la valeur d'une variable dans une cellule
    Salut, j'ai fait un bout de code, mais je crains qu'il y ait une erreur parce que ma cellule A5 n'est pas modifié:
    Sub Macro2()

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Dim MAdate As Date
    MAdate = Range("A5").Value
    Dim newdate As Integer
    newdate = InputBox("choississez la date?", _
        "changement d'année", "", 7000, 7000)
    If newdate < MAdate Then
    intervalle = Year(MAdate) - newdate
    Else
    intervalle = newdate - Year(MAdate)
    End If
    Debug.Print DateAdd("yyyy", -intervalle, MAdate)
    Range("A5").Value = MAdate
    End Sub
    Merci beaucoup de votre aide

  2. #2
    Membre actif
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    206
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 206
    Points : 243
    Points
    243
    Par défaut
    C'est normal qu'elle ne change pas de valeur étant donné que tu lui réaffecte son ancienne valeur sans la modifier

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    MAdate = Range("A5").Value
    ...
    Range("A5").Value = MAdate
    Par contre je n'arrive pas à saisir ce que tu vérifies dans ta conditionnelle, voir même, ce que tu recherches à faire avec cette procédure

  3. #3
    Futur Membre du Club
    Inscrit en
    Août 2010
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Août 2010
    Messages : 22
    Points : 7
    Points
    7
    Par défaut
    Re, je veut en fait modifié l'année de ma cellule en A5

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    Sub Macro2()
    
    Dim MAdate As Date
    MAdate = Range("A5").Value
    Dim newdate As Integer
    newdate = InputBox("choississez la date?", _
        "changement d'année", "", 7000, 7000)
    If newdate < MAdate Then
    intervalle = Year(MAdate) - newdate
    Else
    intervalle = newdate - Year(MAdate)
    End If
    MAdate = DateAdd("yyyy", -intervalle, MAdate)
    Range("A5").Value = MAdate
    End Sub

  4. #4
    Expert éminent
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    3 453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 3 453
    Points : 6 871
    Points
    6 871
    Par défaut
    Bonjour,

    J'ai un peux de peine à comprendre (fin de samaine :o(( ) mais regarde ceci si ça convient :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
     
    Sub Macro2()
     
        Dim Intervalle As Integer
        Dim MAdate As Date
        Dim newdate As Date
     
        MAdate = Range("A5").Value
        newdate = InputBox("choississez la date?", _
            "changement d'année", , 7000, 7000)
     
        Intervalle = Abs(Year(MAdate) - Year(newdate))
     
        [A5] = DateAdd("yyyy", -Intervalle, MAdate)
     
    End Sub
    Hervé.

  5. #5
    Futur Membre du Club
    Inscrit en
    Août 2010
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Août 2010
    Messages : 22
    Points : 7
    Points
    7
    Par défaut re
    Salut,

    merci pour ton code mais il bog ici:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    [A5] = DateAdd("yyyy", -Intervalle, MAdate)
    Ca ne doit pas être bien compliqué je ne suis qu' un débutant merci.

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Février 2008
    Messages
    67
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 67
    Points : 48
    Points
    48
    Par défaut
    les deux dernières lignes à modifier :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
        Intervalle = Year(newdate) - Year(MAdate)
     
        [A5] = DateAdd("yyyy", Intervalle, MAdate)

  7. #7
    Futur Membre du Club
    Inscrit en
    Août 2010
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Août 2010
    Messages : 22
    Points : 7
    Points
    7
    Par défaut re,
    Merci bien ça marche nickel, il me reste plus qu'à faire une boucle sur la colonne et puis c'est bon, mais ça, j'espère que j'arrive à le faire.

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

Discussions similaires

  1. [AC-2000] Comment Recuperer la valeur d'un requete dans une variable
    Par michel.r06 dans le forum VBA Access
    Réponses: 2
    Dernier message: 16/01/2015, 12h26
  2. Comment recuperer la valeur d'un variable dans une methode actionlisner
    Par javacafe dans le forum Débuter avec Java
    Réponses: 2
    Dernier message: 22/05/2014, 15h39
  3. [XSLT] comment recuperer la valeur d'un noeud dans une variable
    Par enzostar dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 06/04/2010, 23h03
  4. portée d'une variable dans une fonction dans une méthode
    Par laurentg2003 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 29/06/2009, 19h05
  5. Réponses: 4
    Dernier message: 15/08/2007, 22h05

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