• Initiateur de la discussion Initiateur de la discussion gregg5l
  • 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 !

G

gregg5l

Guest
Bonjour à tous.

Malgré les recherches que j'ai effectué sur ce forum, je n'ai pas trouvé mon bonheur...

J'explique mon cas :
J'ai 2 listes de noms présentes dans 2 feuilles différentes.
Ce serait le top si dans une troisième feuille, le contenu des 2 listes soit récupéré sans doublons.

Pour mieux comprendre, ci joint un fichier plus explicatif.

Merci d'avance à ceux qui se pencheront sur ce problème et merci à tous pour tous ces messages qui font de ce forum une référence en la matière.
 

Pièces jointes

Re : Liste sans doublons

Bonjour Lol
je viens de rentrer du boulot et j'ai testé les deux versions pas de Bug chez moi 😕

qu'as tu fais exactement ,est ce dans les fichiers origines que tu as le bug ou alors c'est dans ton fichier en adaptant ??????????

Merci D'avance
Bonne journée 😀
 
Re : Liste sans doublons

Bonjour. et merci de te pencher sur le sujet.
C'est dans le fichier adapté qu'il y a ce bug.
Ton fichier original fonctionne parfaitement lui.

Je vais regarder ce que j'ai pu faire comme erreur.

Je vous tiens au courant.

++
 
Re : Liste sans doublons

Salut gregg5l
Bonjour le fil
Bonjour le Forum

greg ne peux tu mettres un extrait de ton fichier sans données confidentielles ou alors la procédure ou ce trouve le code qui bug
Merci d'avance

Bonne journée
 
Re : Liste sans doublons

Salut c'est encore moi.
Voilà, j'ai modifié ton code.

En rouge, j'ai du mettre Integer à la place de Byte, sinon, j'avais le message d'erreur "Dépassement de capacité".

Ainsi, ce code fonctionne, mais il est très long (environ 2minutes avec un Pentium IV).



Sub recup()
Dim TabTemp_1 As Variant
Dim TabTemp_2 As Variant
Dim x As Integer, M As Byte
Dim L As Integer, L2 As Byte, Lgn As Byte, Derlgn As Integer
Dim Maplage As Range
Dim Ws_Source As Worksheet
Dim Ws_Cible As Worksheet

Set Ws_Source = Worksheets("PREP")
Set Ws_Cible = Worksheets("DONNEES")
Application.ScreenUpdating = False
With Ws_Source
TabTemp_1 = .Range("BT10:BT" & .Range("BT600").End(xlUp).Row).Value 'on remplit un tableau avec toutes valeurs
End With
With Ws_Cible
Set Maplage = .Range("F3:F" & .Range("F600").End(xlUp).Row) 'on détermine ma plage
.Range("G3").Resize(UBound(TabTemp_1, 1), 1) = TabTemp_1 'on colle les données du tableau
For L = .Range("G600").End(xlUp).Row To 3 Step -1
M = Application.CountIf(Maplage, .Cells(L, 7)) 'on compte si valeur dans la plage
Derlgn = .Range("G600").End(xlUp).Row
If .Cells(L, 7) = "" Or M <> 0 Then
.Cells(L, 7).Delete shift:=xlUp 'on supprime le cellule en decalant vers le haut
End If
Next
Derlgn = .Range("G600").End(xlUp).Row
.Range("G3:G" & Derlgn).Sort key1:=Range("G3"), Order1:=xlAscending 'ici on trie
End With
Application.ScreenUpdating = True
End Sub



Voilà, si quelqu'un pouvait y jeter un oeil pour réduire le temps d'éxécution ce serait sympa.
Pour info, dans la colonne BT, la recherche doit s'effectuer des lignes 10 à 401, dans la colonne F, il n'y aura jamais de nom après la ligne 59.

J'espère avoir été assez clair dans ma requete.
Merci encore...
 
Re : Liste sans doublons

re
bon après avoir, comme toi , changé DerLgn en Integer

j'ai mis un timer dans la procèdure et le résultat pour 500 lignes(1 sur 2) soit 250 infos,en feuille PREP et 60 lignes en feuille DONNEES j'obtiens 0,409999996219 secondes Lol arff ou alors y a un truc
tiens moi au courant
bone journée
 
Re : Liste sans doublons

arff moi j'ai pas une bête de concours pourtant lol

je ne vois pas non plus ,la tu testes mon fichier sans rien toucher lol c'est ca ???

tu as quelle version D'excel

as tu essayé l'autre version que je t'ai proposée
 
Re : Liste sans doublons

Désolé de te causer tant de soucis 😕

Ton fichier s'exécute très vite en 96,0625 sec.

Le même adapté pour mon fichier s'exécute en 103,.....sec

J'ai la version 2007 d'Excel.
 
- 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
2
Affichages
531
Retour