Supprimer les doublons ?
lailaz
Messages postés
36
Date d'inscription
Statut
Membre
Dernière intervention
-
via55 Messages postés 14512 Date d'inscription Statut Membre Dernière intervention -
via55 Messages postés 14512 Date d'inscription Statut Membre Dernière intervention -
salut tout le monde, alors voici mon probleme
j'ai un tableau excel qui ressemble a celui la :
col 1 col 2
a 1
a 2
a 3
b 1
b 2
je veux supprimer les doublons et obtenir un (a) dans la 1er colonne uniquement une fois et les (1,2,3) qui lui correspond en deuxième colonne
est ce possible, merci d'avance et j'espére que c'est compréhensible
j'ai un tableau excel qui ressemble a celui la :
col 1 col 2
a 1
a 2
a 3
b 1
b 2
je veux supprimer les doublons et obtenir un (a) dans la 1er colonne uniquement une fois et les (1,2,3) qui lui correspond en deuxième colonne
est ce possible, merci d'avance et j'espére que c'est compréhensible
A voir également:
- Supprimer les doublons ?
- Supprimer rond bleu whatsapp - Guide
- Supprimer une page word - Guide
- Supprimer les doublons excel - Guide
- Doublons photos - Guide
- Supprimer pub youtube - Accueil - Streaming
1 réponse
Bonjour
Possible par une macro :
Alt + F11 pour ouvrir Editeur VBA
Onglet Insertion
Module
Copier et coller la macro suivante dans la page blanche
L'adapter si nécessaire
Fermer l'éditeur
Lancer la macro à partir d'une feuille du classeur et de l'onglet DéveloppeurMacros
Cdlmnt
Possible par une macro :
Alt + F11 pour ouvrir Editeur VBA
Onglet Insertion
Module
Copier et coller la macro suivante dans la page blanche
Sub doublons() lg = 1 n° de la ligne de titres en feuille 2 Dim Ligne As Long Ligne = Sheets(1).Columns(1).Find("*", , , , xlByColumns, xlPrevious).Row ' repère dernière ligne de la 1ere colonne de la 1ere feuille du classeur For n = 2 To Ligne ' boucle qui demarre de la ligne 2 (en supposant une ligne de Titres) If Sheets(1).Cells(n, 1) <> Sheets(1).Cells(n - 1, 1) Then ' si la valeur en ligne n est différente de celle de la ligne précédente lg = lg + 1' incremente le n° de ligne pour la feuille 2 aff = Sheets(1).Cells(n, 2) ' place la valeur en colonne 2 dans la variable aff Sheets(2).Cells(lg, 1) = Sheets(1).Cells(n, 1) ' place la valeur en colonne 1 de la 1ere feuille dans le colonne 1 de la 2eme feuille For x = n + 1 To Ligne ' boucle sur les lignes en-dessous If Sheets(1).Cells(x, 1) = Sheets(1).Cells(n, 1) Then aff = aff & ", " & Sheets(1).Cells(x, 2) ' si la valeur en colonne 1 est identique on ajoute la valeur en colonne 2 à aff Next x Sheets(2).Cells(lg, 2) = aff ' ecriture de aff en feuil 2 End If Next n End Sub
L'adapter si nécessaire
Fermer l'éditeur
Lancer la macro à partir d'une feuille du classeur et de l'onglet DéveloppeurMacros
Cdlmnt