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

aider moi à trier un file excel plus de 30000 lignes

  • Initiateur de la discussion Initiateur de la discussion sdow
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

S

sdow

Guest
bonjour

Je suis un nouveau dans Excel, alors je doute que vous poussiez m'aider. J'ai un file de 30000 lignes en Excel avec 15 colonnes je dois enlever les lignes qui se répètent . Comment faire , je n'ai aucun base de programmation .

Merci
 
Re : aider moi à trier un file excel plus de 30000 lignes

Bonjour à tous,

Un code de MichelXLD pour 6 colonnes:

VB:
Option Explicit

Sub SupprimerLignesDoublons()
'http://www.excel-downloads.com/html/French/forum/messages/1_65560_65560.htm
'suppression ligne si toutes les cellules de la ligne forment un doublon
'michel
'le 14.01.2004
Dim Cell As Range
Dim Ligne As Integer, i As Integer
Dim M As Byte, j As Byte, N As Byte
Dim Tableau(), Tableau2()
Dim Cible As String, Resultat As String
Dim U As Boolean

Ligne = Range("A65536").End(xlUp).Row ' derniere ligne non vide colonne A
M = 1
N = 1
ReDim Preserve Tableau(M) 'tableau valeurs uniques colonne A
ReDim Preserve Tableau2(N) ' tableau pour numero de lignes doublons

Application.ScreenUpdating = False
For Each Cell In Range("A1:A" & Ligne)
U = False
Cible = Cell
For j = 1 To 6 ' adapter selon nombre de colonnes pour chaque
Cible = Cible & Cell.Offset(0, j)
Next j
For i = 1 To M
If Cible = Tableau(i - 1) Then '
Tableau2(N - 1) = Cell.Row ' recupere numero de ligne quand un doublon est detecté
N = N + 1
ReDim Preserve Tableau2(N)
U = True
End If
Next i

If Tableau(M - 1) = "" And U = False Then
Tableau(M - 1) = Cible ' remplissage tableau valeurs uniques si pas de doublon détecté
M = M + 1
ReDim Preserve Tableau(M)
End If
Next Cell

For i = N - 1 To 1 Step -1 ' boucle pour supprimer les lignes de doublons
Rows(Tableau2(i - 1)).Delete
Next i
Application.ScreenUpdating = True

End Sub


A+ à tous
 
Dernière édition:
Re : aider moi à trier un file excel plus de 30000 lignes

Bonsoir,

Si tu as plus de 32 767 lignes, il faut passer le type de la variable Ligne en Long.
De toutes façons JCGL, si tu fais un Variable = Range("A65536").End(xlUp).Row, il vaut mieux travailler en Long puisque tu peux tomber sur plus grand qu'un Integer.

Donc :
Code:
Option Explicit

Sub SupprimerLignesDoublons()
'http://www.excel-downloads.com/html/French/forum/messages/1_65560_65560.htm
'suppression ligne si toutes les cellules de la ligne forment un doublon
'michel
'le 14.01.2004
Dim Cell As Range
Dim Ligne As Long, i As Integer

Pour la variable i j'ai pas tout lu le code mais peut-être que Long est aussi nécessaire.
 
Re : aider moi à trier un file excel plus de 30000 lignes

Bonjour à tous,

Tu disais avoir 30 000 lignes donc tu peux laisser Integer.
Ne touche pas au A65536.

Appelles-tu la macro depuis la feuille où sont les données ?

Si non, rajoute Feuil1.Range..... A adapter

A+ à tous
 
Re : aider moi à trier un file excel plus de 30000 lignes

Je suis d'accord sur ce cas JCGL mais le fameux "Range("A65536").End(xlUp).Row" est là pour trouver la dernière ligne utilisée dans la feuille.
Et donc, au dessus de 32 767, on n'est plus en Integer, on est en Long.
Ça devient de plus en plus vrai depuis Excel 2007 ou 2010 je sais plus.
Autant anticiper.
Et puis il faut remplacer 65 536 par 1 048 576 sur Excel 2007.
Je ne parle même pas de la version 2010 64 bits qui autorise un nombre illimité de lignes.
Quid du 65 536 ?
 
Re : aider moi à trier un file excel plus de 30000 lignes

Ce code est vraiment tip top c que je cherchais également.
Je l'ai bien utilisé jusqu'à ce que je dépasse la capacité de lecture.
Si je dépasse 260 lignes j'ai un bug
erreur d'execution '6'
Dépassement de capacité

C'est trop bête, j'ai une série de fichiers qui ne dépasse jamais 1000 lignes

merci
 
Re : aider moi à trier un file excel plus de 30000 lignes

bonjour,
si toutes les valeurs d'une même ligne sont les mêmes, pourquoi ne pas faire une extraction de base de données en cochant 'sans doublons'
c'est plus efficace et plus rapide que toutes les macros ...
 

Pièces jointes

Dernière édition:
Re : aider moi à trier un file excel plus de 30000 lignes

Bonjour à tous

Sinon, si vous avez l'occasion de tester XL2007 ou XL2010, vous pouvez sélectionner vos données puis sur l'onglet Données, il y a un gros bouton Supprimer les Doublons et Hop 🙂.
 
Re : aider moi à trier un file excel plus de 30000 lignes

re,
bien vu, MJ, pour ma part, je laisse toujours les données originales pour pouvoir compter les doublons ...
mais effectivement dans ce cas, c'est la même chose que ce que je décris dans mon petit fichier
 
Re : aider moi à trier un file excel plus de 30000 lignes

oui je connais la fonction Doublons de Word mais elle n'est pas aussi efficace que le VB.
Cette macro fonctionnait vraiment impeccablement pour ma demande
 
Re : aider moi à trier un file excel plus de 30000 lignes

bonjour tous

un autre code si pas excel 2007 & 2010

Code:
Sub es()
Dim t As Variant, t2() As Variant, x As Long, i As Long, k As Long, M As Object
On Error Resume Next
Application.ScreenUpdating = False
Set M = CreateObject("Scripting.Dictionary")
t = Range("a2:p" & Cells(Rows.Count, 1).End(xlUp).Row)
x = 1
For i = 1 To UBound(t)
t(i, 16) = t(i, 1) & t(i, 2) & t(i, 3) & t(i, 4) & t(i, 5) & t(i, 6) & t(i, 7) & t(i, 8) _
& t(i, 9) & t(i, 10) & t(i, 11) & t(i, 12) & t(i, 13) & t(i, 14) & t(i, 15)
If Not M.Exists(t(i, 16)) Then
M.Add t(i, 16), t(i, 16)
ReDim Preserve t2(1 To 15, 1 To x)
For k = 1 To 15: t2(k, x) = (t(i, k)): Next k: x = x + 1: End If: Next i
Range("a2:o" & Cells(Rows.Count, 1).End(xlUp).Row).ClearContents
Range("a2").Resize(UBound(t2, 2), UBound(t2, 1)) = Application.Transpose(t2)
Erase t, t2: Set M = Nothing
End Sub

voir aussi dans discusions similaire une reponse de BOISGONTIER un code mega rapide que je salue au passage🙂
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

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