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 :

MAJ tableau d'une feuille A par rapport aux données d'une feuille B


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Inscrit en
    Novembre 2007
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 13
    Points : 6
    Points
    6
    Par défaut MAJ tableau d'une feuille A par rapport aux données d'une feuille B
    Bonjour,
    j'ai eu beau chercher, mais je n'ai rien trouver sur le sujet.
    Voici ce que j'aimerai faire :
    j'ai créer un classeur qui me sert de matrice avec 2 onglets.
    Le premier onglet est mis à jour quotidiennement
    Le deuxième onglet est un suivi graphique avec un tableau contenant les jours du mois et 5 valeurs.
    Ce que j'aimerai faire c'est :
    1/ lorsque l'utilisateur met à jour les données du premier onglet (Date J-1), mon tableau se met automatiquement à jour à la date de la veille.
    2/ j'aimerai que la macro enregistre le fichier à la date du jour et recopie les données du deuxième onglet dans la matrice (afin de garder les données pour le graphe).
    Je vous joint la matrice que j'ai fait.
    Info supplémentaire : je pensais créer un onglet qui se nomme calendrier avec les mois et les jours de l'année. Mais j'ai vite abandonné l'idée.

    Merci d'avance pour vos réponses et je continue mes recherches.

    GalJin
    Fichiers attachés Fichiers attachés

  2. #2
    Futur Membre du Club
    Inscrit en
    Novembre 2007
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 13
    Points : 6
    Points
    6
    Par défaut
    Merci pour vos réponses!
    Je suis toujours à la recherche de la solution et je n'ai rien trouvé à part le fait qu'il va certainement falloir que j'utilise la fonction RECHERCHEH que je ne connais pas.

    Je continue mes recherches ...

  3. #3
    Membre confirmé
    Avatar de Bigalo
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    445
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2007
    Messages : 445
    Points : 563
    Points
    563
    Par défaut
    Bonjour,

    Citation Envoyé par GalJin Voir le message
    Merci pour vos réponses!
    Ton descriptif est relativement vague : aucune indication de formule ni référence de cellules.

    Je te rappelle que ce sont des bénévoles qui répondent ici. Parmi les points qui peuvent donner envie de répondre :

    • La solution est simple, et en quelques secondes je peux y répondre
    • A l’opposé, "Tiens voilà un challenge intéressant, qui mérite qu’on s’y intéresse"


    Dans tous les cas, c'est l'énoncé qui doit suffire à déclencher quelque chose. S'il faut commencer par télécharger un fichier pour se faire une idée de l’intérêt du problème, les chances d’obtenir une réponse sont bien moindres.
    Michel Gaboly
    Développeur Excel et VBA


    Pas de question technique par MP, je n’y répondrai pas, utilisez le forum - Merci
    Pensez à ajouter le tag

  4. #4
    Futur Membre du Club
    Inscrit en
    Novembre 2007
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 13
    Points : 6
    Points
    6
    Par défaut
    Je vais essayer de m'expliquer sur ce que je veux faire :
    J'ai un onglet (1) qui est mis à jour tous les jours par les utilisateurs.
    J'ai un 2ème onglet qui contient un graphe de suivi avec un tableau contenant les jours du mois.
    Ce que j'aimerai que la macro fasse c'est :
    1/ recopier les valeurs de certaines cellules de l'onglet(1) dans la cellule du tableau à la date du jour J-1.
    2/ enregistrer le fichier rempli au nom du jour J-1
    3/ recopier les données du tableau rempli dans mon fichier nommé "Matrice" afin que je puisse suivre l'évolution du graphe.
    Le fichier joint contient les 2 onglets concernés.
    Pour pouvoir recopier les données de la veille dans le tableau, j'ai choisi la solution de passer par un fichier tampon dans lequel je vais copier les données de mon fichier enregistré et dès que l'utilisateur ouvre la matrice, celle-ci va recopier les données de mon fichier tampon pour avoir les statistiques de l'avant veille.

    J'espère avoir été compréhensible.

    Je continue de chercher et je posterai le code que j'aurai créer.

  5. #5
    Futur Membre du Club
    Inscrit en
    Novembre 2007
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 13
    Points : 6
    Points
    6
    Par défaut
    Bonjour,
    J'ai contourné le problème en faisant comme suit :
    Lorsque l'utilisateur ouvre la matrice, j'ai inclu une macro à l'ouverture duc classeur qui va chercher l'onglet "suivi graph" du fichier de l'avant veille.

    La macro donne donc ceci :
    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
    18
    19
    20
    21
    22
    23
    24
     
        Dim Madate
        Dim Fichier As Variant
        Madate = Range("L1").Text ' La cellule L1 contient la forumule =AUJOURDHUI() -2 au format jj-mm-aaaaa
        ' si une erreur apparaît lors de la copie, on arrête
        On Error GoTo 1 ' le service n'est pas ouvert le dimanche donc il n'y a pas de fichier créé.
        Fichier = "Adhérence Ret TRO LR " & Range("M1").Text & ".xls"
        ' On va récupérer le fichier enregistré à J-2
        chemin = "\\NomServeur\Services\NomService\Reporting\Suivi adhérence \Historique \"
        Workbooks.Open Filename:= _
        chemin & Fichier, _
        UpdateLinks:=0
        Windows(Fichier).Activate
        ' sélection de l'onglet contenant le tableau
        Sheets("Suivi Graph").Select
        ' on copie l'onglet dans la matrice après le 1er onglet du classeur
        Sheets("Suivi Graph").Copy After:=Workbooks( _
            "Matrice.xls").Sheets(1)
        Application.CutCopyMode = False
        ' ainsi le fichier matrice est à jour des données de l'avant veille
        ' Fermeture du fichier de l'avant veuille sans sauvegarde
        Windows(Fichier).Activate
        ActiveWindow.Close (savechanges = False)
    1
    Cela a résolu mon probléme et ma matrice est toujours à jour une fois l'onglet copié.

    Il va quand même falloir que je trouve le code qu'il faut pour que ce fichier ne se remplisse pas le 1er février puisque le suivi se fait du 1er au dernier jour du mois.

    Bonne journée.

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 19/11/2012, 11h57
  2. Réponses: 5
    Dernier message: 06/10/2011, 12h56
  3. Trier une Map<Long, String> par rapport aux données
    Par zuzuu dans le forum Collection et Stream
    Réponses: 9
    Dernier message: 26/03/2009, 10h03
  4. Réponses: 8
    Dernier message: 15/11/2008, 23h14
  5. Réponses: 1
    Dernier message: 29/09/2007, 17h47

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