Remplacement cellules feuille 1 par cellules feuille 2 [Résolu/Fermé]

Signaler
-
Messages postés
3334
Date d'inscription
samedi 20 juillet 2013
Statut
Membre
Dernière intervention
9 décembre 2016
-
Bonjour à tous!

Désolé de vous ennuyer avec ça mais j'arrive pas à le faire tout seul (c'est pas faute d'avoir essayé).

J'ai besoin de la chose suivante :
Si le contenu d'une cellule de la colonne A de la feuille 2 est égal au contenu d'une cellule de la colonne A de la feuille 1, je veux remplacer le contenu d'une cellule X de la feuille 1 par le contenu d'une cellule X de la feuille 2.
J'ai besoin de faire ça pour plusieurs colonnes qui n'ont pas forcément la même lettre.

Correspondances de cellules :
Cellule de référence - colonne A
Feuille 2 colonne B = Feuille 1 colonne B
Feuille 2 colonne C = Feuille 1 colonne E
Feuille 2 colonne D = Feuille 1 colonne D
Feuille 2 colonne E = Feuille 1 colonne F
Feuille 2 colonne F = Feuille 1 colonne G
Feuille 2 colonne G = Feuille 1 colonne H
Feuille 2 colonne H = Feuille 1 colonne I
Feuille 2 colonne I = Feuille 1 colonne K
Feuille 2 colonne J = Feuille 1 colonne L

Précisions :
Sur ma feuille 1 qui vous l'aurez compris est ma base complète, j'ai un grand nombre d'entrée qui n'ont non pas de contenu de référence (cellule A vide). J'ai bien évidemment besoin de conserver ces lignes dans l'état ou elles sont.

Connaissez-vous la formule magique SVP ?

Merci pour votre temps et votre aide
Antoine

4 réponses

Messages postés
2940
Date d'inscription
vendredi 1 mai 2009
Statut
Membre
Dernière intervention
19 mars 2016
1 294
Bonjour,

le plus simple serait que tu envoies un extrait de ton fichier ou quelque chose d'équivalent via le site cijoint

A+

pépé
Messages postés
3334
Date d'inscription
samedi 20 juillet 2013
Statut
Membre
Dernière intervention
9 décembre 2016
496
Bonjour Antoine,

Ton problème n'est peut-être pas aussi simple qu'il y parait.
Exemple de formule à appliquer en Feuil2!B1 :
Si Feuil2!A1 = Feuil1!A1 alors Feuil2!B1 = Feuil1!B1, sinon ???
C'est ce sinon qui pose souci.

Avec une simple formule, tu ne peux pas indiquer que la valeur ne doit pas être changée si la condition n'est pas vérifiée. Il faut pour cela utiliser VBA.

Et pour que nous puissions t'aider d'avantage, suis le conseil de pépé35530.

A+
Merci pour vos réponses Gyrus et Pépé,

J'ai réglé mon problème.

A l'origine j'étais sur une formule capilotractée qui me permettait de traiter toutes ma base d'un coup. J'avais bien viré les filtres et renommé toutes mes colonnes pour qu'il n'y ai pas 2 noms de colonnes identiques sur la feuille BDD Prod et que les noms entre la feuille BDD Prod et la feuille Liste Cpgs Admin soit identiques.
La formule sur un troisième onglet ca donnait ça :
=SIERREUR(RECHERCHEH(B1;'Liste Cpgs Admin'!$A$1:$AAQ$19;EQUIV($A2;'Liste Cpgs Admin'!$A$1:$A$19;0););SI(ESTVIDE(RECHERCHEH(B$1;'BDD Production'!$A$1:$AAQ$19;EQUIV($A2;'BDD Production'!$A$1:$A$19;0);));"YOUPI";RECHERCHEH(B$1;'BDD Production'!$A$1:$AAQ$19;EQUIV($A2;'BDD Production'!$A$1:$A$19;0);)))

Le YOUPI c'était pour identifier facilement les cellules qui devaient rester vide pour effectuer le remplacement après.

J'avais un peu peur que ce soit instable (dur à contrôler car j'ai plus de 3000 entrées sur la base et 154 colonnes) et j'avais passé pas mal de temps dessus donc j'ai posté un message sur le forum.

Hier soir j'ai réfléchi à une formule pour chaque colonne que j'avais à retraiter, ainsi le reste de la base était conservé telle quelle et j'esquivais le problème du "Sinon"

J'ai ajouté une première ligne avec des numéros sur la feuille 1 pour indiquer dans quelle colonne excel devait chercher l'information sur la feuille 2.
Ça donne ça:
=RECHERCHEV($A3;'Liste Cpgs Admin'!$A:$J;'BDD Production'!B$1;FAUX)

J'ai ainsi utilisé cette formule sur les colonnes que je devais remplacer et ça a fonctionné.

Merci encore pour vos messages :-)
Antoine
Messages postés
3334
Date d'inscription
samedi 20 juillet 2013
Statut
Membre
Dernière intervention
9 décembre 2016
496
Bonjour,

Merci pour ton retour.
Bonne continuation.

A+