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

Autres rapidité

chilo27

XLDnaute Occasionnel
Bonsoir le forum

Je vous sollicite de nouveau
pour accélérer un petit fichier que j'ai trouvé sur le net de Boisgonthier

Mon souhait est d'accélérer le traitement des données
j'ai des documents sur beaucoup de lignes

En vous remerciant par avance
 

Pièces jointes

  • FusionLignesDoublons.zip
    20 KB · Affichages: 15

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonsoir @chilo27,

Essayez ce code (tout se passe en mémoire):
VB:
Sub TEST()
Dim d1 As Object, f1 As Worksheet, f2 As Worksheet
Dim t, i&, clef, j&
   Set d1 = CreateObject("Scripting.Dictionary")
   d1.CompareMode = vbTextCompare
   Set f1 = Sheets("BD")
   Set f2 = Sheets("résultats")
   t = f1.Range("a1").CurrentRegion.Value
   For i = 1 To UBound(t)
      clef = t(i, 1) & "|" & t(i, 2)
      If Not d1.exists(clef) Then d1.Add clef, d1.Count + 1
      For j = 1 To UBound(t, 2)
         If t(i, j) <> "" Then t(d1(clef), j) = t(i, j)
      Next j
   Next i
   f2.Range("a1").CurrentRegion.Clear
   f2.Range("a1").Resize(d1.Count, UBound(t, 2)) = t
End Sub
 

chilo27

XLDnaute Occasionnel
Bonjour le forum, Mapomme

J'ai pris connaissance de votre dernier message
J'essaie de le faire et j'utiliserai votre macro
En vous remerciant
si éventuellement je n'arrive pas je serai obligé de faire appel à vous

Merci beaucpoup
 
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…