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 :

Déplacement d'une cellule en fonction de l'année


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 35
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 16
    Points : 9
    Points
    9
    Par défaut Déplacement d'une cellule en fonction de l'année
    Bonjour à tous,

    Je viens vers vous car je voudrais que ma macro se modifie dès lors que l'on change d année.
    Je m explique j'ai créé une macro qui permet de copier des cellules d'un classeur dans un autre classeur.
    Et je voudrais que mes cellules décale vers la droite dès lors que l'on change d'année pour ne pas perdre mes données que j'ai obtenu pour l'année 2014.
    Par exemple, si en 2014 j'ai copier-coller dans ma cellule A1 je voudrais qu'en 2015 il soit coller dans la cellule C1.

    Si quelqu'un à une idée je suis preneuse.
    Merci d'avance.

  2. #2
    Invité
    Invité(e)
    Par défaut Bonjour,
    as tu prévues une cellule pour sauvegarder l'année traité car si nom tu vas copier tout le temps tes valeur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if range("a1")<> year(date) then
    'je copy
    range("a1")= year(date)
    end if
    Dernière modification par AlainTech ; 18/05/2014 à 21h23. Motif: Suppression de la citation inutile

  3. #3
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 35
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 16
    Points : 9
    Points
    9
    Par défaut
    Bonjour rdurupt,

    Non, il va copier -coller toujours dans la même cellule que j'ai mit dans mon code et moi je voudrais qu'il change de cellule dès lors que l'on change d'année.

    Voici mon code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Sub CopierColler()
     
    Dim structure_clients_ As Workbook, structure_clients_gourmand As Workbook
     
    Set structure_clients_ = ThisWorkbook
    Set structure_clients_gourmand = Application.Workbooks.Open(Filename:="C:\Users\SJH5594\Desktop\test\structure_clients_gourmand.xls")
     
     Workbooks("structure_clients_gourmand").Sheets("par compteur colis").Range("A1") = Workbooks("structure_clients_").Sheets("par compteur colis").Range("C3").Value
     
    structure_clients_gourmand.Close
     
    End Sub
    Merci encore

  4. #4
    Invité
    Invité(e)
    Par défaut
    oui j'ai bien compris!
    le problème est quand on s’aperçoit que l'on change d'année!
    si j'ouvre mon fichier le 1/1/2015 ou le 2/1/2015!
    si je ne me souviens pas que j'ai fait le traitement?????
    comment je fais la différence? je comprends qu'il faut décaler d'une année à l'autre mais quand?

  5. #5
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 35
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 16
    Points : 9
    Points
    9
    Par défaut
    Quelque soit le jour il faut juste que l'on soit en 2015 je veux que ma cellule que je coller durant l'année 2014 en A1 va se coller mais une cellule vers la droite donc dans la cellule B1.

  6. #6
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    69
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 69
    Points : 134
    Points
    134
    Par défaut
    Bonjour, en faisant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Workbooks("structure_clients_gourmand").Sheets("par compteur colis").Cells(1, Year(Now) - 2013) = Workbooks("structure_clients_").Sheets("par compteur colis").Range("C3").Value
    tu aurais les données les unes à côté des autres selon l'année actuelle (2014 -> A1, 2015 -> B1, 2016 -> C1 etc).
    Ça reste du pur bricolage mais avec les maigres infos que tu nous donne je peux pas faire plus.

  7. #7
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 35
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 16
    Points : 9
    Points
    9
    Par défaut
    Merci létudiant68, sa fonctionne.
    Par contre pourquoi tu as mis 2013 dans cells.

    J'ai comprit pourquoi tu as mit 2013 mais je voulais également savoir si tu savais comment je pouvais faire si je voulais que ma cellule ou je veux coller ma variable ne soit pas A1 mais par exemple D9.

    Merci encore.

  8. #8
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    69
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 69
    Points : 134
    Points
    134
    Par défaut
    Bonjour, nous sommes en 2014, Year(Now) renvoie l'année actuelle donc Year(Now) - 2013 = 2014 -2013 = 1, ce qui nous donne un Cells(1, 1) autrement dit la cellule situé sur la ligne 1 et la colonne 1.
    Pour obtenir D9 il faut adapter le numéro de ligne et de colonne, pour la ligne il suffit de mettre 9 pour la colonne un petit calcul te donnera vite le résultat :
    D est la 4ème colonne donc on veut que 2014 - X = 4 ce qui nous fait X = 2010
    Il faut donc mettre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Cells(9, Year(Now) - 2010)

  9. #9
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 35
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 16
    Points : 9
    Points
    9
    Par défaut
    Merci bcp letudiant68 c'est exactement ce qu'il me fallait .

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

Discussions similaires

  1. Mise en forme d'une cellule en fonction de son contenu
    Par Iloon dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 24/01/2008, 10h42
  2. clic sur une cellule active fonction recherche
    Par john63 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 27/11/2007, 21h48
  3. Réponses: 7
    Dernier message: 13/10/2007, 23h31
  4. Réponses: 4
    Dernier message: 11/10/2007, 09h28
  5. Comment écrire dans une cellule la fonction SUM en vba?
    Par Subkill dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 15/02/2007, 19h24

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