Macro qui supprime le contenu d'une cellule par rapport à une autre liste

Bonjour,

Je fais suite à mon message d'hier qui a été résolu.

Je m’aperçois que dans ma colonne B (clé unique) il y a déjà quelques données de la colonne D. Cela ne me va pas.

Alors, je cherche une Marco qui vient supprimer le contenu des cellules dans B - qui ont pour valeur le contenu de ma liste en D

Merci pour votre aide.

Voilà mon tableau actuel.

Tout fonctionne très bien. Mais dans ma base réelle, j'ai plus de 200k lignes. C'est un peu "bidouillé" mais ça fonctionne !

La formule en C

=NB.SI($E$3:$E$121;B3)

me permet de mettre des "0" en face de chaque valeur unique dans ma base et "1" pour devant chaque valeur déjà présente en E (nouvelle valeur insérée dans la base en B) - Il ne me reste plus qu'a filtrer et afficher les cellules ayant le "1" puis de supprimer le contenu de la cellule.

Le problème, c'est de filtrer, de supprimer et d'afficher la base "propre"... c'est horriblement long et je pense qu'avec une macro, cela irait beaucoup plus rapidement.

Je vous mets mon exemple, pour tenter d'être plus claire :)

En résumé, la macro devrait faire le travaille de la formule, sans passer par les étapes, de filtres, de tri, de suppression en B et de "sélectionner tout"

Salut,

Le fichier ci-joint devrait correspondre à ton attente.

Tu déclenches la macro par le bouton en place en E1.

Les données supprimées sont indiquées dans les colonnes I et J

Cordialement.

Bonjour,

Impressionnant, je ne m'attendais pas à une macro qui fasse l'ensemble :)

Il y a un souci dans le sens où j'ai l'impression que ça se passe bien pour les valeur_2 valeur_4 etc... (paires) mais pour les valeur_1 valeur_3 etc... il beug.

Par exemple, en résultat G50, nous devrions avoir, Valeur_1 à la place de Nom_50. là, j'ai Valeur_59 et valeur_1 dans la colonne supprimés.
Alors il doit en effet être supprimé dans B avec de venir remplacer mais là du coup il vient seulement dans la colonne supprimés.

Pas simple à expliquer :/

EDIT : j'ai posté trop vite ; je reviens à l'instant.

J'ai maintenant arrangé les deux problèmes que tu as mentionnés.

Les données effacées apparaissent maintenant à l'envers, mais comme tu n'avais pas demandé cette partie, je n'ai rien fait de plus pour l'instant. Si tu souhaites que je modifie l'ordre de ces données effacées, dis-moi comment ?

Non l'ordre d'affichage m'importe peu, ma seule contrainte, c'est la liaison entre l'iD et et le nom qui ne doit pas bouger et surtout, que le remplacement s'effectue bien en face du bon iD.

Je vais tester cela mais au premier abord, ça me semble parfait.

Merci en tout cas pour ce travail ! C'est propre

Bonjour Yvouille,

Après plusieurs tests, c'est tout nickel.

Ma seule demande, serait de savoir si il était possible, pour la première étape, de ne pas supprimer les lignes, mais de laisser l'iD et la cellule simplement vide.

En gros, ça serait de laisser en "G" des cellules vide en face des iD en "F" (en rouge dans l'exemple joint : colonne i).

Merci beaucoup pour ton aide.

Si je t'ai bien compris, ma première idée serait de reprendre les ID inscrits dans la colonne I et de le remettre dans la colonne F (il n'y aurait donc rien en colonne G).

Je pense qu'il faudrait faire des copies de ces ID en colonne I afin de laisser les infos des ces colonnes I et J en place.

Mais alors comment veux-tu trier tes colonnes F et G à la suite de cette réinsertion ? Sur la base de la colonne F ?

Chaleureusement.

Oui l'idée serait d'avoir les iDs de la colonne I aussi dans la colonne F. La seule différence serait qu'en face (en G) la cellule soit vide.

Le tri se ferait alors, comme actuellement, par ordre croissant des iDs en colonne F.

On aurait alors par exemple

en F : 1 2 3 4

en G : gi az ct

Je pense que le fichier ci-joint devrait faire l'affaire. Pour la peine, j'ai également effectué un tri final sur les colonnes I et J.

Pour une démo plus visible, j'ai modifié quelques cellules dans les colonnes A à D (inscrites en rouge).

Pour pratiquer de nouveaux essais, effectue une copie de la feuille "Feuil1 AVANT MACRO" sans jamais modifier cette feuille.

Cordialement.

c'est parfait !

Un grand merci! les tests sont + !

Merci Yvouille pour cet aide précieus.

Rechercher des sujets similaires à "macro qui supprime contenu rapport liste"