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

Excel Discussion :

mise à jour d'un tableau


Sujet :

Excel

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 44
    Points : 22
    Points
    22
    Par défaut mise à jour d'un tableau
    Bonjour,
    voici mon problème:
    J'ai deux tableaux sur deux feuilles différentes, par exemple:
    TABLEAU 1 TABLEAU 2
    référence | désignation et référence | désignation
    0210 | bidule 0210 | bidule
    0211 | machin 0211 | machin
    0212 | truc 0220 | chouette
    etc....

    je souhaiterai mettre à jour mon tableau 1 par rapport aux références de mon tableau 2.
    Par mise à jour je veux dire si la 1ère référence dans le tableau 2 correspond à celle du tableau 1 alors ne rien faire,
    si la référence n'est pas la même, vérifier si une désignation correspond.
    si la désignation correspond, changer la désignation dans le tableau 1.
    si rien ne correspond, ajouter la ligne dans le tableau 1.
    Voila je pense que j'ai tout dit. je ne sais absolument pas si cette "chose" est possible :p (surement avec une macro mais j'en sais pas bcp plus)
    Merci à ceux qui voudront bien m'aider (merci aux autres quand même aussi)
    bye

  2. #2
    Expert éminent
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Points : 7 964
    Points
    7 964
    Par défaut
    Bonjour,
    Citation Envoyé par pipo159 Voir le message
    Par mise à jour je veux dire si la 1ère référence dans le tableau 2 correspond à celle du tableau 1 alors ne rien faire
    Il n'y aura jamais de décalage possible ?

    Citation Envoyé par pipo159 Voir le message
    si la référence n'est pas la même, vérifier si une désignation correspond.
    si la désignation correspond, changer la désignation dans le tableau 1.
    Un exemple ?

    Citation Envoyé par pipo159 Voir le message
    si rien ne correspond, ajouter la ligne dans le tableau 1.
    Une ligne en fin de tableau où à la ligne correspondante du tableau 2 ?

    Citation Envoyé par pipo159 Voir le message
    Voila je pense que j'ai tout dit. je ne sais absolument pas si cette "chose" est possible :p (surement avec une macro mais j'en sais pas bcp plus)
    Oui c'est tout à fait possible mais il va falloir passer par une macro pour simplifier les choses. Si c'est possible d'avoir une copie du fichier ça permettrait de directement coder correctement, sinon je veux bien le faire comme ça à la volée mais il va falloir adapter.
    Essaye de répondre le plus précisément aux questions, plus ça sera précis, mieux la réponse sera adaptée
    LES FAQ OFFICE - LES COURS OFFICE - LES COURS EXCEL - LES LIVRES OFFICE - SOURCES VBA - ATELIER BRICOLAGE VBA

    Lorsque votre problème est solutionné, pensez à le signaler en cliquant sur le bouton au bas de la discussion.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 44
    Points : 22
    Points
    22
    Par défaut
    bonsoir,
    voila j'ai joint un fichier excel avec un petit exemple
    j'ai détaillé dedans les différents points que la macro pourrait faire.

    pour en revenir a ce que tu disais sur le "décalage":
    en fait c'est pas forcement ligne 1du 1er tableau avec ligne 1 du 2e tableau.
    Il se peut quelques fois qu'il y ait des pièces qui ne soient pas ordonnées de la meme façon. il faudrait qu'à chaque fois pour une référence, la macro scan le tableau à mettre à jour en entier pour vérifier si la pièce est dedans.

    Merci beaucoup de ta réponse
    bye
    Pipo
    Fichiers attachés Fichiers attachés

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 44
    Points : 22
    Points
    22
    Par défaut
    en fait, je verrai deux boucles SI imbriquées. la 1ere qui scan le tableau de ref et l'autre qui scan le tableau à mettre à jour, la 1ere fois par rapport à la référence et une deuxième fois par rapport à la référence.
    Après je ne sais pas comment et où écrire ce genre de code^^
    Merci de votre aide
    Pipo

  5. #5
    Expert éminent
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Points : 7 964
    Points
    7 964
    Par défaut
    Voici un 1er jet

    Pièce jointe 26870
    LES FAQ OFFICE - LES COURS OFFICE - LES COURS EXCEL - LES LIVRES OFFICE - SOURCES VBA - ATELIER BRICOLAGE VBA

    Lorsque votre problème est solutionné, pensez à le signaler en cliquant sur le bouton au bas de la discussion.

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 44
    Points : 22
    Points
    22
    Par défaut
    bonjour tous le monde, et bonjour à toi fring,
    woua merci beaucoup pour un "premier jet" comme tu dis c'est beaucoup plus que ce que j'aurai pu faire!

    En effet si la référence est fausse et que la designation est correcte alors la MaJ fonctionne.
    Si ni la référence ni la designation correspondent alors une fenetre s'affiche et on peut alors modifier les paramètres de la pièce et la MaJ fonctionne
    Si une ligne vide est trouvé , une fenetre s'affiche avec des champs vide mais on peut quand meme continuer la maj donc pas de problème.

    Toutefois si je peux me permettre, si la référence est correcte et que la désignation est fausse, rien ne change , donc la MaJ de cette ligne ne fonctionne pas correctement.
    de plus, est_il possible lorsqu'il ne reconnait pas la désignation et la référence, alors une fenetre apparait avec la liste de la feuille à mettre à jour. Cette liste contient uniquement (si possible) les lignes etant du meme genre que celle de la feuille de référence (je sais pas si je suis très clair sur ce point). On aurait donc ensuite le choix entre ajouter cette pièce dans la liste ou remplacer une pièce de la liste affichée.
    Je sais pas si je suis clair et surtout si c'est possible

    Merci bien de m'avoir aider
    Pipo
    Fichiers attachés Fichiers attachés

  7. #7
    Expert éminent
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Points : 7 964
    Points
    7 964
    Par défaut
    Citation Envoyé par pipo159 Voir le message
    Toutefois si je peux me permettre, si la référence est correcte et que la désignation est fausse, rien ne change , donc la MaJ de cette ligne ne fonctionne pas correctement.
    Bin oui...j'ai respecté ce que tu as demandé
    Par mise à jour je veux dire si la 1ère référence dans le tableau 2 correspond à celle du tableau 1 alors ne rien faire

    Citation Envoyé par pipo159 Voir le message
    de plus, est_il possible lorsqu'il ne reconnait pas la désignation et la référence, alors une fenetre apparait avec la liste de la feuille à mettre à jour. Cette liste contient uniquement (si possible) les lignes etant du meme genre que celle de la feuille de référence (je sais pas si je suis très clair sur ce point). On aurait donc ensuite le choix entre ajouter cette pièce dans la liste ou remplacer une pièce de la liste affichée.
    Je sais pas si je suis clair et surtout si c'est possible
    Hormis faire des frites, tout est possible, mais en effet...je ne suis pas certain de bien comprendre alors si tu pouvais décrire point par point un exemple, ça m'éviterait de partir dans une mauvaise direction
    LES FAQ OFFICE - LES COURS OFFICE - LES COURS EXCEL - LES LIVRES OFFICE - SOURCES VBA - ATELIER BRICOLAGE VBA

    Lorsque votre problème est solutionné, pensez à le signaler en cliquant sur le bouton au bas de la discussion.

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 44
    Points : 22
    Points
    22
    Par défaut
    bonsoir,

    il y a 3 feuilles:
    feuille référence
    feuille que l'on souhaite mettre à jour
    feuille qui a été mise à jour

    voila j'ai détaillé plusieurs exemples dans le fichier

    Merci beaucoup de ton aide
    bye
    Pipo
    Fichiers attachés Fichiers attachés

  9. #9
    Expert éminent
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Points : 7 964
    Points
    7 964
    Par défaut
    Je viens d'examiner ton exemple et avant d'aller plus loin, j'ai quelques questions ou remarques en reprenant les différentes possibilités :

    • ligne 2 : OK
    • ligne 3 : OK
    • ligne 4 : OK
    • lignes 5 et 6 : là c'est ingérable, comment faire deviner à excel que lit et lits peuvent être la même chose ? On doit à ce moment là jouer sur les caractères mais combien de caractères, les 2 premiers, les 3 premiers, ... ? Ce qui va, à mon avis, engendrer tout un tas de complications ou d'erreurs.
    • concernant l'incrémentation possible d'une référence : OK


    Bon...vu qu'au départ tu demandais comment prendre le train de Paris à Lyon et que maintenant il faut prendre l'avion pour se rendre de Paris à New York avec la possibilité de faire des escales à Tokyo ou à Toronto tout en faisant 2 loopings au dessus de L'Anapurna...ça peut prendre un peu de temps
    LES FAQ OFFICE - LES COURS OFFICE - LES COURS EXCEL - LES LIVRES OFFICE - SOURCES VBA - ATELIER BRICOLAGE VBA

    Lorsque votre problème est solutionné, pensez à le signaler en cliquant sur le bouton au bas de la discussion.

  10. #10
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 44
    Points : 22
    Points
    22
    Par défaut
    salut,
    non en fait 'est l'utilisateur qui voit que c'est la meme chose car il apparait dans la liste donc peut remplacer l'ancienne ligne par la nouvelle
    donc (s'il n'y a pas reconnaissance ni par la reference ni par la designation comme dans le cas ici) l'utilisateur a le choix entre remplacer une ligne par une autre ou ajouter dans la liste

    voila
    oui c'est vrai que c'est assez compliqué mais prends le temps qu'il te faut lol.
    réécris moi si je ne suis toujours pas clair pour cette fmeuse ligne

    merci de ton aide
    Pipo

  11. #11
    Expert éminent
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Points : 7 964
    Points
    7 964
    Par défaut
    Re,

    Tu peux me tester cette nouvelle version et me dire si ça te convient
    LES FAQ OFFICE - LES COURS OFFICE - LES COURS EXCEL - LES LIVRES OFFICE - SOURCES VBA - ATELIER BRICOLAGE VBA

    Lorsque votre problème est solutionné, pensez à le signaler en cliquant sur le bouton au bas de la discussion.

  12. #12
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 44
    Points : 22
    Points
    22
    Par défaut
    bonjour à tous et a toi fring,
    J'ai vu ta macro, elle est très bien.
    En effet, elle "fait" tous ce que j'avais demandé lol
    Par contre une chose que je n'avais pas précisé (:s désolé), c'est qu'il peut exister plusieurs pièces identiques dans la liste (comme des vis par exemple).
    Elles ont la meme référence, désignation, temps prépa, genre et famille MAIS pas forcément la meme fonction.
    Dans ce cas, il y a un problème car la mise à jour ne se fait pas correctement.
    Un tout petit détail, lorsque la mise à jour d'une pièce a été effectuée, si le temps de prépa ou le genre a changé sur la feuille de référence, ils ne sont pas modifié après mise à jour.

    De plus, est il possible à la place de la liste déroulante, d'avoir une liste qui s'affiche où on peut "cocher" des pièces que l'on souhaite remplacer. Comme cela, par exemple, toutes les désignations, références et autres colonnes (sauf familles et fonctions) seraient remplacées en même temps.
    Est-il possible lorsque ni la référence ni la désignation ne correspond à une pièce, de rajouter une recherche par mot clé comme (ctrl+h) je crois excel.


    Est-il possible plutot de copier la feuille référence dans un fichier "temp" et ainsi on a plus qu'à copier les différentes fonctions et familles dans ce fichier temp qui sera ensuite copié dans la feuille à mettre à jour? Cela permettrai d'avoir le même ordre que le fichier référence.
    En effet le bût ultime (:p) serait d'obtenir au final le meme tableau que le fichier temp mais avec en plus les familles et fonctions remplies pour toutes les pièces de la feuille à mettre à jour (jsais pas si je suis très clair^^), en faisant une recherche par mot clé lorsque ni la référence ni la désignation ne correspond.
    Je sais que je t'en demande beaucoup, merci beaucoup de m'aider autant.
    Au fur et à mesure de lire ton code, j'apprend un petit peu la façon de codé mais je suis loin de pouvoir m'en sortir en solo^^
    Merci encore
    Bye
    Pipo
    Fichiers attachés Fichiers attachés

  13. #13
    Expert éminent
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Points : 7 964
    Points
    7 964
    Par défaut
    ...

    Ouais ok mais bon...si à chaque fois tu me reponds toute une nouvelle stratégie d'utilisation je dis Stop...!

    Ce genre de modifs il y a deux manières de les traiter, soit on bricole des petits bouts qu'on insère en les faisant tenir avec du papier collant en espérant qu'ils vont tenir une semaine...soit on jette tout et on recommence

    Je dis pas que je ne vais pas le faire mais plus tard parce que là ca me fout un peu les boules cette manière de procéder.

    A+
    LES FAQ OFFICE - LES COURS OFFICE - LES COURS EXCEL - LES LIVRES OFFICE - SOURCES VBA - ATELIER BRICOLAGE VBA

    Lorsque votre problème est solutionné, pensez à le signaler en cliquant sur le bouton au bas de la discussion.

  14. #14
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 44
    Points : 22
    Points
    22
    Par défaut
    bonsoir, oui j'imagine bien que c'est pas terrible d'avoir les infos au compte goutte. Le problème c'est qu'on me "prévient" au compte goutte aussi^^
    On ne m'a dit qu'aujourd'hui qu'il est très possible que des pièces soient en plusieurs exemplaires dans les tableaux.
    Désolé pour cette "malheureuse info". Si j'avais pu modifier la macro tout seul pour la faire fonctionner je l'aurai très volontiers fait^^ mais comme tu peux t'en douter, je comprends pas grand chose.

    Merci beaucoup à toi
    bye

    Pipo

  15. #15
    Expert éminent
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Points : 7 964
    Points
    7 964
    Par défaut
    Bon...le coup de gueule ça c'est fait, revenons à des choses plus constructives (tu vas devoir m'envoyer une caisse de champ )

    Mais je ne capte pas tout...

    Par contre une chose que je n'avais pas précisé (:s désolé), c'est qu'il peut exister plusieurs pièces identiques dans la liste (comme des vis par exemple).
    Elles ont la meme référence, désignation, temps prépa, genre et famille MAIS pas forcément la meme fonction.
    Dans ce cas, il y a un problème car la mise à jour ne se fait pas correctement.
    Là je vois pas comment la vérification peut se faire vu que la fonction n'est pas définie dans la feuille de référence, pour excel les 4 valeurs vérifiables sont identiques, il ne peut pas deviner que la fonction pourrait être différente...!


    Un tout petit détail, lorsque la mise à jour d'une pièce a été effectuée, si le temps de prépa ou le genre a changé sur la feuille de référence, ils ne sont pas modifié après mise à jour.
    Bin oui...tu m'as toujours demandé de vérifier la référence et la désignation, pas le reste...mais cette modif là n'est pas trop tordue à réaliser


    De plus, est il possible à la place de la liste déroulante, d'avoir une liste qui s'affiche où on peut "cocher" des pièces que l'on souhaite remplacer. Comme cela, par exemple, toutes les désignations, références et autres colonnes (sauf familles et fonctions) seraient remplacées en même temps.
    Là je ne pige pas


    Est-il possible lorsque ni la référence ni la désignation ne correspond à une pièce, de rajouter une recherche par mot clé comme (ctrl+h) je crois excel.
    Une recherche de quoi ?


    Est-il possible plutot de copier la feuille référence dans un fichier "temp" et ainsi on a plus qu'à copier les différentes fonctions et familles dans ce fichier temp qui sera ensuite copié dans la feuille à mettre à jour? Cela permettrai d'avoir le même ordre que le fichier référence.
    En effet le bût ultime (:p) serait d'obtenir au final le meme tableau que le fichier temp mais avec en plus les familles et fonctions remplies pour toutes les pièces de la feuille à mettre à jour, en faisant une recherche par mot clé lorsque ni la référence ni la désignation ne correspond. (jsais pas si je suis très clair^^)
    Là comme je disais dans mon coup de gueule...on jette tout ce qui a été fait et on recommence
    LES FAQ OFFICE - LES COURS OFFICE - LES COURS EXCEL - LES LIVRES OFFICE - SOURCES VBA - ATELIER BRICOLAGE VBA

    Lorsque votre problème est solutionné, pensez à le signaler en cliquant sur le bouton au bas de la discussion.

  16. #16
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 44
    Points : 22
    Points
    22
    Par défaut
    re-bonsoir,
    en effet la problématique générale est d'obtenir le meme tableau que celui en référence mais étant donné que les 2 colonnes famille et fonction ne sont pas dans le tableau de référence, il faut que pour les pièces qui sont dans les 2 tableaux,garder leur donnée famille et fonction.
    En gros, cela revient à copier les familles et fonctions dans le tableau de référence (ou fichier temp équivalent).

    petite particularité: pour les pièces qui sont plusieurs fois dans la liste, la famille est la meme
    Si les références sont identiques, les désignations sont identiques, ou les 2 alors la case famille et fonction sont copiés.
    Si rien ne correspond, pouvoir faire une recherche dans la liste par mot clé (par exemple si la désignation est "petit bureau", on tape le mot clé "bureau", une liste avec toutes les désignations qui contiennent le mot bureau apparait, on pourrai alors sélectionner une ou plusieurs lignes que l'on souhaite remplacer)

    voila j'essaye de tourner mon problème dans tous les sens pour trouver une solution qui fonctionne. Etant donné que je ne sais pas programmer, j'ai du mal à imaginer des solutions qui seraient facil à programmer.
    Voila dis moi si tu as mieu (ou moins) bien compris^^ ou si carément ça te fait C**** lol

    Merci encore
    Pipo

  17. #17
    Expert éminent
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Points : 7 964
    Points
    7 964
    Par défaut
    Ok, je regarderai ca ce w-e, j'ai bien une petite idée sur la question
    LES FAQ OFFICE - LES COURS OFFICE - LES COURS EXCEL - LES LIVRES OFFICE - SOURCES VBA - ATELIER BRICOLAGE VBA

    Lorsque votre problème est solutionné, pensez à le signaler en cliquant sur le bouton au bas de la discussion.

  18. #18
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 44
    Points : 22
    Points
    22
    Par défaut
    bonjour,
    ok merci beaucoup de ta part
    bonne chance:p

    bye

    Pipo

Discussions similaires

  1. Réponses: 3
    Dernier message: 10/10/2011, 11h10
  2. [XL-2007] VBA pour automatiser la mise à jour d'un tableau
    Par gdmeunier dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 13/06/2011, 17h42
  3. [XL-2007] Mise à jour d'un tableau à partir d'un autre tableau générique
    Par NoxfromParis dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 11/01/2011, 20h40
  4. Réponses: 3
    Dernier message: 23/06/2010, 11h41
  5. Mise à jour d'un tableau de liens
    Par mielikki dans le forum Langage
    Réponses: 3
    Dernier message: 12/09/2009, 19h59

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