Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2019 Comparer et remplacer des valeurs

Redux

XLDnaute Nouveau
Bonjour,

un fournisseur a décidé de changer toutes ses références, je me retrouve donc avec un fichier qui contient dans une colonne les anciennes références et dans une deuxième colonne les nouvelles références.

Je voudrais mettre à jour mon fichier csv personnel contenant certaines des anciennes références par les nouvelles.
Je me retrouve donc avec un fichier possédant 3 colonnes:

1. old_refrence -> anciennes références.
2. new_refrence -> les nouvelles références.
3. reference -> celle de mon fichier

Je voudrais comparer les colonnes old_reference et reference et quand elles correspondent que l'ancienne référence soit remplacer par la nouvelle dans la colonne reference.
Je vous joint un fichier avec un extrait.

En vous remerciant,

Redux.
 

Pièces jointes

  • test-ref.xlsx
    9.9 KB · Affichages: 4

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour Redux,
C'est possible de le faire sans VBA, voir PJ avec :
VB:
=INDEX(B:B;EQUIV(C2;A:A;0))
J'ai créé une colonne NewRefPerso avec la liste des nouvelles ref.
J'ai supposé que old_ref et ref n'était pas identique comme c'est le cas dans votre fichier. J'ai mélangé la liste ref pour être plus représentatif.
Evidemment en VBA c'est faisable, mais ne me semble pas apporter de plus value.
 

Pièces jointes

  • test-ref.xlsx
    10 KB · Affichages: 4

Redux

XLDnaute Nouveau
Bonjour @Phil69970 et @sylvanu ,

je vous remercie d'avoir pris le temps de m'apporter des réponses, effectivement comme tu le souligne @sylvanu , les références dans la colonne reference et old_reference ne sont pas dans le même ordre, donc mon fichier d'exemple est effectivement loin de la réalité et j'en suis désolé, la colonne reference contient aussi d'autres références de différents fournisseurs, qui elles doivent rester inchangé.

En gros quand on a une référence dans la colonne reference qui est présente dans la colonne old_reference il faut la remplacer par la valeur correspondante de la colonne new_reference.

Je sais pas si je suis assez clair, si ce n'est pas le cas n'hésitez pas a me le faire remarquer.
 

Phil69970

XLDnaute Barbatruc
Re

Donnez un exemple qui n'a rien à voir avec la réalité à l'air d'être à la mode sur le forum.
Donc forcément les réponses n'ont rien à voir avec le vrai fichier du demandeur et la solution est forcément inapplicable.

==> un fichier au plus proche de la réalité est donc de rigueur.

@Phil69970
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour Redux, Phil,
Exact, j'ai considéré que toute ref a une nouvelle. En PJ c'est rectifié. Si une ref a une nouvelle je la prends sinon je garde l'ancienne. Avec :
VB:
=SI(INDEX(B:B;EQUIV(C2;A:A;0))=0;C2;INDEX(B:B;EQUIV(C2;A:A;0)))
 

Pièces jointes

  • test-ref (1).xlsx
    10.1 KB · Affichages: 2

Redux

XLDnaute Nouveau
Bonjour,
effectivement @Phil69970 c'est d'ailleurs pour cette raison que je m'en suis excusé je n'avais pas pris tous les cas possibles en compte

Merci @sylvanu je vais tester cette formule ce week-end sur mon gros fichier et je vous tiens au courant.
Bon week-end à tous les deux.

Redux.
 

Discussions similaires

Réponses
6
Affichages
320
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…