Excel: transfert d'info vers autre fichier

Résolu
em -  
 em -
Bonjour,

J'ai un grand fichier A de 100000 articles avec prix, tva, nom de produits. J'ai un autre fichier B de 900 articles sans information. Je voudrais alimenter ce fichier B avec les infos du fichier A mais ne sais plus comment. Je sais que c'est une formule toute simple mais lorsqu'on ne pratique plus excel... ben c'est pas comme le vélo !
Merci pour votre aide

Em.

3 réponses

  1. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    Bonjour,

    classeur1 avec : ref, prix, tva, nom
    La référence (clé de recherche) doit être dans la 1ère colonne.

    en Classeur2:
    A2 : 1 ref
    B2 : =RECHERCHEV($A2;[Classeur1]Feuil1!$A$1:$D$20;2;FAUX)
    recherche la ref en colonne 1 de [Classeur1]Feuil1!$A$1:$D$20, si trouvée retourne la valeur colonne 2 (prix), sinon #N/A
    C2: =RECHERCHEV($A2;[Classeur1]Feuil1!$A$1:$D$20;3;FAUX)
    D2: =RECHERCHEV($A2;[Classeur1]Feuil1!$A$1:$D$20;4;FAUX)
    etc

    Sélectionner B2:D2 et recopier vers le bas.

    eric
    1
    1. axion
       
      salut eriiic;,
      solution efficace, bien qu'un peu plus lourde, mais...
      comment fais-tu si les valeurs de base ne se suivent pas ?
      ça m'intéresse
      bonne soirée




      je reprends la ligne
      par valeurs ne se suivant pas, j'entends: des plages de valeurs espacées de valeurs à ne pas prendre en compte pour le transfert
      merci de ta réponse
      bon WE
      0
    2. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
       
      comment fais-tu si les valeurs de base ne se suivent pas ?
      C'est à dire ?
      Soit la clé est trouvée et les valeurs sont affichées, soit elle n'existe pas et on a #N/A (ce que l'on peut modifier avec un test)
      eric
      0
    3. axion
       
      je reprends la ligne
      par valeurs ne se suivant pas, j'entends: des plages de valeurs espacées de valeurs à ne pas prendre en compte pour le transfert
      merci de ta réponse
      bon WE
      0
    4. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
       
      S'il y a des clés à tenir compte et d'autres identiques à ne pas tenir compte ça risque d'être difficile pour excel de deviner....
      Sans doute qu'un fichier exemple éclaircira : cijoint.fr et coller ici le lien fourni (utilise 2 feuilles du même classeur pour simplifier)
      eric
      0
    5. axion
       
      un tableau simplifié en exemple:
      A1: clé 1
      A2: clé 2
      A3: clé 3
      A4: clé 4
      A5: clé 5
      le transfert ne doit porter que sur les clés A1 et A2 puis sur A5
      jusque là ça reste simple (chaque clé a une valeur #)
      ça se complique si les plages de clés portent sur plusieurs centaines,
      avec des clés intermédiaires unitaires ou par plages, non retenues pour transfert
      exemple : choisir 900 articles sur 100 000 (d'apparence aléatoire bien que sélective)
      doit-on reprendre la formule à chaque nouveau départ de plage ?
      ou bien y a-t'il une solution ?
      merci d'avance et bonne soirée
      0
  2. dna.factory Messages postés 19964 Date d'inscription   Statut Modérateur Dernière intervention   1 621
     
    Il me semble qu'il existe une option dénomée recherche verticale, je ne connais pas trop les détails, je t'invite donc à googleler à ce sujet.
    0
    1. em
       
      MERCI A TOUS çà marche super avec recherche v j'avais inversée les données!!!
      0
  3. TD33planté
     
    salut,

    voici une solution fastidieuse et archaïque pour 900 lignes, si tant est qu'elles ne se suivent pas :
    ouvrir les 2 fichiers en 1/2 écran G/D chacun
    se positionner sur le fichier à compléter, 1ere cellule à remplir
    taper = puis selectionner dans le 1er fichier la cellule de référence, puis [enter]
    et ainsi de suite ...pour les 899 autres Bon courage !

    si les cellules du 2nd suivent exactement ( ou par plages successives) celles du 1er, une fois validée la 1ere formule, se positionner dans son angle droit bas pour faire apparaître la croix noire. chiquer (G) et maintenir en descente autant de lignes qui se suivent sur les 2 fichiers.

    chaque modification du 1er fichier entrainera la modif du second, dès son ouverture, aprés acceptation du message MS

    attention toutefois à ne pas mettre en lecture seule ! donc non protégé

    bonne journée
    -1
    1. TD33planté
       
      j'ai oublié : attention aussi à ne pas rajouter ou supprimer de lignes dans un seul des fichiers
      0
    2. em
       
      Merci,
      à force de bidouiller j'ai trouvé une semi solution mais je n'arrive pas à l'appliquer à l'ensemble du dossier pour le moment! j'ai utilisé la formule =si (cellule de ref erence du fichier 1 = cellule du fichier 2; alors prendre valeur ex prix correspondant) mais malheureusement cela ne fonctionne que sur la première cellule. je pense que c'est une question de positionner la fonction $ correctement pour que cela s'applique à l'ensemble du tableau mais je n'y arrive pas!! merci pour les infos. bonne soirée
      0
    3. TD33planté
       
      bonjour,
      quelle type de plage cette fonction concerne-t'elle ? :
      colonne simple, multiple, plage précise dans les 2 cas ?
      les lignes se suivent-t'elles toujours ou bien y a-t'il des espaces entre les cellules concernées
      dans l'un ou l'autre fichier ?
      le cadencement est-t'il régulier ?
      autant de paramètres qui conditionnent la fonction

      l'idéal est d'avoir un cadencement régulier dans les 2 fichiers
      celà simplifie nettement par répétition-glisser

      bon WE
      0