Bonjour à tous,
Après avoir recherché à solutionner le problème dans le forum (je passe la
polémique sur une demande sur le sujet), je ne pense pas avoir trouvé quelque
chose qui me convienne.
Plusieurs utilisateurs remplissent une feuille excel de même structure
(plusieurs colonnes).
Je reçois ces feuilles et les regroupe (ajoute) dans leur ensemble dans une
seule feuille.
Cela provoque forcément des doublons.
J'ai essayé une méthode de comparaison sur des lignes triées mais elle est
extrêmement lente (sur 10000 lignes).
Quelqu'un peut me guider à rendre cette intégration plus performante.
Merci de votre aide.
--
René Delcourt
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
SL
Bonjour
Je n'ai pas suivi les discussions précédentes Une proposition : en supposant que tu as 5 colonnes A à E qui sont remplies (ligne 1 en étiquette). En colonne F : A2&B2&C2&D2&E2 en G : =equiv(F2;$F$2:$F$10000;0)=ligne() Faire une copie, coller les valeurs de colonne F et G (ou calcul sur ordre) puis un filtre sur FAUX
Stéphane
"René Delcourt" a écrit dans le message de news:
Bonjour à tous, Après avoir recherché à solutionner le problème dans le forum (je passe la polémique sur une demande sur le sujet), je ne pense pas avoir trouvé quelque chose qui me convienne. Plusieurs utilisateurs remplissent une feuille excel de même structure (plusieurs colonnes). Je reçois ces feuilles et les regroupe (ajoute) dans leur ensemble dans une seule feuille. Cela provoque forcément des doublons. J'ai essayé une méthode de comparaison sur des lignes triées mais elle est extrêmement lente (sur 10000 lignes). Quelqu'un peut me guider à rendre cette intégration plus performante. Merci de votre aide. -- René Delcourt
Bonjour
Je n'ai pas suivi les discussions précédentes
Une proposition : en supposant que tu as 5 colonnes A à E qui sont remplies
(ligne 1 en étiquette).
En colonne F : A2&B2&C2&D2&E2 en G : =equiv(F2;$F$2:$F$10000;0)=ligne()
Faire une copie, coller les valeurs de colonne F et G (ou calcul sur ordre)
puis un filtre sur FAUX
Stéphane
"René Delcourt" <rdelcourt@Bluewin.ch> a écrit dans le message de news:
D82D2415-1823-4F44-B246-3D5257154DD7@microsoft.com...
Bonjour à tous,
Après avoir recherché à solutionner le problème dans le forum (je passe la
polémique sur une demande sur le sujet), je ne pense pas avoir trouvé
quelque
chose qui me convienne.
Plusieurs utilisateurs remplissent une feuille excel de même structure
(plusieurs colonnes).
Je reçois ces feuilles et les regroupe (ajoute) dans leur ensemble dans
une
seule feuille.
Cela provoque forcément des doublons.
J'ai essayé une méthode de comparaison sur des lignes triées mais elle est
extrêmement lente (sur 10000 lignes).
Quelqu'un peut me guider à rendre cette intégration plus performante.
Merci de votre aide.
--
René Delcourt
Je n'ai pas suivi les discussions précédentes Une proposition : en supposant que tu as 5 colonnes A à E qui sont remplies (ligne 1 en étiquette). En colonne F : A2&B2&C2&D2&E2 en G : =equiv(F2;$F$2:$F$10000;0)=ligne() Faire une copie, coller les valeurs de colonne F et G (ou calcul sur ordre) puis un filtre sur FAUX
Stéphane
"René Delcourt" a écrit dans le message de news:
Bonjour à tous, Après avoir recherché à solutionner le problème dans le forum (je passe la polémique sur une demande sur le sujet), je ne pense pas avoir trouvé quelque chose qui me convienne. Plusieurs utilisateurs remplissent une feuille excel de même structure (plusieurs colonnes). Je reçois ces feuilles et les regroupe (ajoute) dans leur ensemble dans une seule feuille. Cela provoque forcément des doublons. J'ai essayé une méthode de comparaison sur des lignes triées mais elle est extrêmement lente (sur 10000 lignes). Quelqu'un peut me guider à rendre cette intégration plus performante. Merci de votre aide. -- René Delcourt
René Delcourt
Merci pour ta réponse. C'est dans ce sens que j'ai écrit ma macro qui s'avère lente sur quelques milliers de lignes... -- René Delcourt
Bonjour
Je n'ai pas suivi les discussions précédentes Une proposition : en supposant que tu as 5 colonnes A à E qui sont remplies (ligne 1 en étiquette). En colonne F : A2&B2&C2&D2&E2 en G : =equiv(F2;$F$2:$F$10000;0)=ligne() Faire une copie, coller les valeurs de colonne F et G (ou calcul sur ordre) puis un filtre sur FAUX
Stéphane
"René Delcourt" a écrit dans le message de news:
Bonjour à tous, Après avoir recherché à solutionner le problème dans le forum (je passe la polémique sur une demande sur le sujet), je ne pense pas avoir trouvé quelque chose qui me convienne. Plusieurs utilisateurs remplissent une feuille excel de même structure (plusieurs colonnes). Je reçois ces feuilles et les regroupe (ajoute) dans leur ensemble dans une seule feuille. Cela provoque forcément des doublons. J'ai essayé une méthode de comparaison sur des lignes triées mais elle est extrêmement lente (sur 10000 lignes). Quelqu'un peut me guider à rendre cette intégration plus performante. Merci de votre aide. -- René Delcourt
Merci pour ta réponse.
C'est dans ce sens que j'ai écrit ma macro qui s'avère lente sur quelques
milliers de lignes...
--
René Delcourt
Bonjour
Je n'ai pas suivi les discussions précédentes
Une proposition : en supposant que tu as 5 colonnes A à E qui sont remplies
(ligne 1 en étiquette).
En colonne F : A2&B2&C2&D2&E2 en G : =equiv(F2;$F$2:$F$10000;0)=ligne()
Faire une copie, coller les valeurs de colonne F et G (ou calcul sur ordre)
puis un filtre sur FAUX
Stéphane
"René Delcourt" <rdelcourt@Bluewin.ch> a écrit dans le message de news:
D82D2415-1823-4F44-B246-3D5257154DD7@microsoft.com...
Bonjour à tous,
Après avoir recherché à solutionner le problème dans le forum (je passe la
polémique sur une demande sur le sujet), je ne pense pas avoir trouvé
quelque
chose qui me convienne.
Plusieurs utilisateurs remplissent une feuille excel de même structure
(plusieurs colonnes).
Je reçois ces feuilles et les regroupe (ajoute) dans leur ensemble dans
une
seule feuille.
Cela provoque forcément des doublons.
J'ai essayé une méthode de comparaison sur des lignes triées mais elle est
extrêmement lente (sur 10000 lignes).
Quelqu'un peut me guider à rendre cette intégration plus performante.
Merci de votre aide.
--
René Delcourt
Merci pour ta réponse. C'est dans ce sens que j'ai écrit ma macro qui s'avère lente sur quelques milliers de lignes... -- René Delcourt
Bonjour
Je n'ai pas suivi les discussions précédentes Une proposition : en supposant que tu as 5 colonnes A à E qui sont remplies (ligne 1 en étiquette). En colonne F : A2&B2&C2&D2&E2 en G : =equiv(F2;$F$2:$F$10000;0)=ligne() Faire une copie, coller les valeurs de colonne F et G (ou calcul sur ordre) puis un filtre sur FAUX
Stéphane
"René Delcourt" a écrit dans le message de news:
Bonjour à tous, Après avoir recherché à solutionner le problème dans le forum (je passe la polémique sur une demande sur le sujet), je ne pense pas avoir trouvé quelque chose qui me convienne. Plusieurs utilisateurs remplissent une feuille excel de même structure (plusieurs colonnes). Je reçois ces feuilles et les regroupe (ajoute) dans leur ensemble dans une seule feuille. Cela provoque forcément des doublons. J'ai essayé une méthode de comparaison sur des lignes triées mais elle est extrêmement lente (sur 10000 lignes). Quelqu'un peut me guider à rendre cette intégration plus performante. Merci de votre aide. -- René Delcourt
Philippe
Je vois 3 facteurs de lenteur :
L'affichage : commencer le code par application.screenupdatingúlse Le calcul : (si c'est une source servant de calcul) =>application.calculate=xlmanual (ne pas oublier de revenir en xlAutomatic, contrairement à l'ffichage, ca ne se réinitialise pas en fin de code) Excel : si c'est vraiment bloquant, passer sur Access puis assistant de requete permettant de trouver des doublons. Mais bon, la manipulation est quand meme longue, donc ne le faire que si tu n'y arrives pas autrement.
En esperant t'aider.
Philippe.
Merci pour ta réponse. C'est dans ce sens que j'ai écrit ma macro qui s'avère lente sur quelques milliers de lignes... -- René Delcourt
Bonjour
Je n'ai pas suivi les discussions précédentes Une proposition : en supposant que tu as 5 colonnes A à E qui sont remplies (ligne 1 en étiquette). En colonne F : A2&B2&C2&D2&E2 en G : =equiv(F2;$F$2:$F$10000;0)=ligne() Faire une copie, coller les valeurs de colonne F et G (ou calcul sur ordre) puis un filtre sur FAUX
Stéphane
"René Delcourt" a écrit dans le message de news:
Bonjour à tous, Après avoir recherché à solutionner le problème dans le forum (je passe la polémique sur une demande sur le sujet), je ne pense pas avoir trouvé quelque chose qui me convienne. Plusieurs utilisateurs remplissent une feuille excel de même structure (plusieurs colonnes). Je reçois ces feuilles et les regroupe (ajoute) dans leur ensemble dans une seule feuille. Cela provoque forcément des doublons. J'ai essayé une méthode de comparaison sur des lignes triées mais elle est extrêmement lente (sur 10000 lignes). Quelqu'un peut me guider à rendre cette intégration plus performante. Merci de votre aide. -- René Delcourt
Je vois 3 facteurs de lenteur :
L'affichage : commencer le code par application.screenupdatingúlse
Le calcul : (si c'est une source servant de calcul)
=>application.calculate=xlmanual
(ne pas oublier de revenir en xlAutomatic, contrairement à l'ffichage, ca ne
se réinitialise pas en fin de code)
Excel : si c'est vraiment bloquant, passer sur Access puis assistant de
requete permettant de trouver des doublons. Mais bon, la manipulation est
quand meme longue, donc ne le faire que si tu n'y arrives pas autrement.
En esperant t'aider.
Philippe.
Merci pour ta réponse.
C'est dans ce sens que j'ai écrit ma macro qui s'avère lente sur quelques
milliers de lignes...
--
René Delcourt
Bonjour
Je n'ai pas suivi les discussions précédentes
Une proposition : en supposant que tu as 5 colonnes A à E qui sont remplies
(ligne 1 en étiquette).
En colonne F : A2&B2&C2&D2&E2 en G : =equiv(F2;$F$2:$F$10000;0)=ligne()
Faire une copie, coller les valeurs de colonne F et G (ou calcul sur ordre)
puis un filtre sur FAUX
Stéphane
"René Delcourt" <rdelcourt@Bluewin.ch> a écrit dans le message de news:
D82D2415-1823-4F44-B246-3D5257154DD7@microsoft.com...
Bonjour à tous,
Après avoir recherché à solutionner le problème dans le forum (je passe la
polémique sur une demande sur le sujet), je ne pense pas avoir trouvé
quelque
chose qui me convienne.
Plusieurs utilisateurs remplissent une feuille excel de même structure
(plusieurs colonnes).
Je reçois ces feuilles et les regroupe (ajoute) dans leur ensemble dans
une
seule feuille.
Cela provoque forcément des doublons.
J'ai essayé une méthode de comparaison sur des lignes triées mais elle est
extrêmement lente (sur 10000 lignes).
Quelqu'un peut me guider à rendre cette intégration plus performante.
Merci de votre aide.
--
René Delcourt
L'affichage : commencer le code par application.screenupdatingúlse Le calcul : (si c'est une source servant de calcul) =>application.calculate=xlmanual (ne pas oublier de revenir en xlAutomatic, contrairement à l'ffichage, ca ne se réinitialise pas en fin de code) Excel : si c'est vraiment bloquant, passer sur Access puis assistant de requete permettant de trouver des doublons. Mais bon, la manipulation est quand meme longue, donc ne le faire que si tu n'y arrives pas autrement.
En esperant t'aider.
Philippe.
Merci pour ta réponse. C'est dans ce sens que j'ai écrit ma macro qui s'avère lente sur quelques milliers de lignes... -- René Delcourt
Bonjour
Je n'ai pas suivi les discussions précédentes Une proposition : en supposant que tu as 5 colonnes A à E qui sont remplies (ligne 1 en étiquette). En colonne F : A2&B2&C2&D2&E2 en G : =equiv(F2;$F$2:$F$10000;0)=ligne() Faire une copie, coller les valeurs de colonne F et G (ou calcul sur ordre) puis un filtre sur FAUX
Stéphane
"René Delcourt" a écrit dans le message de news:
Bonjour à tous, Après avoir recherché à solutionner le problème dans le forum (je passe la polémique sur une demande sur le sujet), je ne pense pas avoir trouvé quelque chose qui me convienne. Plusieurs utilisateurs remplissent une feuille excel de même structure (plusieurs colonnes). Je reçois ces feuilles et les regroupe (ajoute) dans leur ensemble dans une seule feuille. Cela provoque forcément des doublons. J'ai essayé une méthode de comparaison sur des lignes triées mais elle est extrêmement lente (sur 10000 lignes). Quelqu'un peut me guider à rendre cette intégration plus performante. Merci de votre aide. -- René Delcourt
SL
Une proposition sans filtre (c'est peût-être ça qui ralenti la macro ?)
Sur la colonne qui contient les VRAI/FAUX, sélectionner un VRAI, Atteindre (F5), Cellule, Différence par colonne, supprimer ligne entière.
Stéphane
"René Delcourt" a écrit dans le message de news:
Merci pour ta réponse. C'est dans ce sens que j'ai écrit ma macro qui s'avère lente sur quelques milliers de lignes... -- René Delcourt
Bonjour
Je n'ai pas suivi les discussions précédentes Une proposition : en supposant que tu as 5 colonnes A à E qui sont remplies (ligne 1 en étiquette). En colonne F : A2&B2&C2&D2&E2 en G : =equiv(F2;$F$2:$F$10000;0)=ligne() Faire une copie, coller les valeurs de colonne F et G (ou calcul sur ordre) puis un filtre sur FAUX
Stéphane
"René Delcourt" a écrit dans le message de news:
Bonjour à tous, Après avoir recherché à solutionner le problème dans le forum (je passe la polémique sur une demande sur le sujet), je ne pense pas avoir trouvé quelque chose qui me convienne. Plusieurs utilisateurs remplissent une feuille excel de même structure (plusieurs colonnes). Je reçois ces feuilles et les regroupe (ajoute) dans leur ensemble dans une seule feuille. Cela provoque forcément des doublons. J'ai essayé une méthode de comparaison sur des lignes triées mais elle est extrêmement lente (sur 10000 lignes). Quelqu'un peut me guider à rendre cette intégration plus performante. Merci de votre aide. -- René Delcourt
Une proposition sans filtre (c'est peût-être ça qui ralenti la macro ?)
Sur la colonne qui contient les VRAI/FAUX, sélectionner un VRAI, Atteindre
(F5), Cellule, Différence par colonne, supprimer ligne entière.
Stéphane
"René Delcourt" <rdelcourt@Bluewin.ch> a écrit dans le message de news:
E519E721-4400-4A95-A169-121E847BF8A5@microsoft.com...
Merci pour ta réponse.
C'est dans ce sens que j'ai écrit ma macro qui s'avère lente sur quelques
milliers de lignes...
--
René Delcourt
Bonjour
Je n'ai pas suivi les discussions précédentes
Une proposition : en supposant que tu as 5 colonnes A à E qui sont
remplies
(ligne 1 en étiquette).
En colonne F : A2&B2&C2&D2&E2 en G : =equiv(F2;$F$2:$F$10000;0)=ligne()
Faire une copie, coller les valeurs de colonne F et G (ou calcul sur
ordre)
puis un filtre sur FAUX
Stéphane
"René Delcourt" <rdelcourt@Bluewin.ch> a écrit dans le message de news:
D82D2415-1823-4F44-B246-3D5257154DD7@microsoft.com...
Bonjour à tous,
Après avoir recherché à solutionner le problème dans le forum (je passe
la
polémique sur une demande sur le sujet), je ne pense pas avoir trouvé
quelque
chose qui me convienne.
Plusieurs utilisateurs remplissent une feuille excel de même structure
(plusieurs colonnes).
Je reçois ces feuilles et les regroupe (ajoute) dans leur ensemble dans
une
seule feuille.
Cela provoque forcément des doublons.
J'ai essayé une méthode de comparaison sur des lignes triées mais elle
est
extrêmement lente (sur 10000 lignes).
Quelqu'un peut me guider à rendre cette intégration plus performante.
Merci de votre aide.
--
René Delcourt
Une proposition sans filtre (c'est peût-être ça qui ralenti la macro ?)
Sur la colonne qui contient les VRAI/FAUX, sélectionner un VRAI, Atteindre (F5), Cellule, Différence par colonne, supprimer ligne entière.
Stéphane
"René Delcourt" a écrit dans le message de news:
Merci pour ta réponse. C'est dans ce sens que j'ai écrit ma macro qui s'avère lente sur quelques milliers de lignes... -- René Delcourt
Bonjour
Je n'ai pas suivi les discussions précédentes Une proposition : en supposant que tu as 5 colonnes A à E qui sont remplies (ligne 1 en étiquette). En colonne F : A2&B2&C2&D2&E2 en G : =equiv(F2;$F$2:$F$10000;0)=ligne() Faire une copie, coller les valeurs de colonne F et G (ou calcul sur ordre) puis un filtre sur FAUX
Stéphane
"René Delcourt" a écrit dans le message de news:
Bonjour à tous, Après avoir recherché à solutionner le problème dans le forum (je passe la polémique sur une demande sur le sujet), je ne pense pas avoir trouvé quelque chose qui me convienne. Plusieurs utilisateurs remplissent une feuille excel de même structure (plusieurs colonnes). Je reçois ces feuilles et les regroupe (ajoute) dans leur ensemble dans une seule feuille. Cela provoque forcément des doublons. J'ai essayé une méthode de comparaison sur des lignes triées mais elle est extrêmement lente (sur 10000 lignes). Quelqu'un peut me guider à rendre cette intégration plus performante. Merci de votre aide. -- René Delcourt
ClémentMarcotte
Bonjour,
Après avoir recherché à solutionner le problème dans le forum (je passe la polémique sur une demande sur le sujet), je ne pense pas avoir trouvé quelque
chose qui me convienne.
Faudrait peut-être une référence à la question d'origine, personne ici n'est devin.
Cela provoque forcément des doublons. J'ai essayé une méthode de comparaison sur des lignes triées mais elle est extrêmement lente (sur 10000 lignes). Quelqu'un peut me guider à rendre cette intégration plus performante.
1 ) Tu te fais un filtre élaboré avec Extraction sans doublon.
2 ) Tu passes par ADO, en t'assurant que les conflits de mise à jour sont gérés au moment de la mise à jour. (CF "Programming ADO") de David Sceppa chez Microsoft Press.)
Bonjour,
Après avoir recherché à solutionner le problème dans le forum (je passe la
polémique sur une demande sur le sujet), je ne pense pas avoir trouvé
quelque
chose qui me convienne.
Faudrait peut-être une référence à la question d'origine, personne ici n'est
devin.
Cela provoque forcément des doublons.
J'ai essayé une méthode de comparaison sur des lignes triées mais elle est
extrêmement lente (sur 10000 lignes).
Quelqu'un peut me guider à rendre cette intégration plus performante.
1 ) Tu te fais un filtre élaboré avec Extraction sans doublon.
2 ) Tu passes par ADO, en t'assurant que les conflits de mise à jour sont
gérés au moment de la mise à jour. (CF "Programming ADO") de David Sceppa
chez Microsoft Press.)
Après avoir recherché à solutionner le problème dans le forum (je passe la polémique sur une demande sur le sujet), je ne pense pas avoir trouvé quelque
chose qui me convienne.
Faudrait peut-être une référence à la question d'origine, personne ici n'est devin.
Cela provoque forcément des doublons. J'ai essayé une méthode de comparaison sur des lignes triées mais elle est extrêmement lente (sur 10000 lignes). Quelqu'un peut me guider à rendre cette intégration plus performante.
1 ) Tu te fais un filtre élaboré avec Extraction sans doublon.
2 ) Tu passes par ADO, en t'assurant que les conflits de mise à jour sont gérés au moment de la mise à jour. (CF "Programming ADO") de David Sceppa chez Microsoft Press.)
Daniel.M
Bonjour René,
' Stratégie générale '1. Rajouter une colonne avec la formule donnant le numéro de ligne ' =LIGNE() '2. Fixer ce numéro en 'dur' (copier/collage spéciale par valeur) '3. Trier sur toutes les colonnes qui identifie un doublon ' si plus de 3 colonnes à trier, faire plusieurs tris en ' commençant avec les colonnes les moins importantes pour ' la clé de tri '4. Rajouter une autre colonne avec la comparaison (sur les 5 colonnes) ' entre la ligne courante et précédente. La comparaison devra retourner ' un booléen qui identifie si la ligne est à détruire. ' Un exemple de formule, matricielle celle-là : ' =ET(A2:E2¡:E1) '5. Fixer en dur les valeurs retournées par cette formule (copier/coller par valeur) '6. Trier selon cette nouvelle colonne '7. Détruire d'un bloc les lignes qui auront été identifiées 'doublons' par un VRAI en valeur booléenne. '8. Avec les lignes restantes, trier selon la colonne du numéro de ligne original (obtenue en étape 1) '9. Détruire les deux colonnes qu'on a rajoutées
Avise si une des étapes te cause du soucis. Résultat < 5 secondes chez moi.
Salutations,
Daniel M.
"René Delcourt" wrote in message news:
Merci pour ta réponse. C'est dans ce sens que j'ai écrit ma macro qui s'avère lente sur quelques milliers de lignes... -- René Delcourt
Bonjour
Je n'ai pas suivi les discussions précédentes Une proposition : en supposant que tu as 5 colonnes A à E qui sont remplies (ligne 1 en étiquette). En colonne F : A2&B2&C2&D2&E2 en G : =equiv(F2;$F$2:$F$10000;0)=ligne() Faire une copie, coller les valeurs de colonne F et G (ou calcul sur ordre) puis un filtre sur FAUX
Stéphane
"René Delcourt" a écrit dans le message de news:
Bonjour à tous, Après avoir recherché à solutionner le problème dans le forum (je passe la polémique sur une demande sur le sujet), je ne pense pas avoir trouvé quelque chose qui me convienne. Plusieurs utilisateurs remplissent une feuille excel de même structure (plusieurs colonnes). Je reçois ces feuilles et les regroupe (ajoute) dans leur ensemble dans une seule feuille. Cela provoque forcément des doublons. J'ai essayé une méthode de comparaison sur des lignes triées mais elle est extrêmement lente (sur 10000 lignes). Quelqu'un peut me guider à rendre cette intégration plus performante. Merci de votre aide. -- René Delcourt
Bonjour René,
' Stratégie générale
'1. Rajouter une colonne avec la formule donnant le numéro de ligne ' =LIGNE()
'2. Fixer ce numéro en 'dur' (copier/collage spéciale par valeur)
'3. Trier sur toutes les colonnes qui identifie un doublon
' si plus de 3 colonnes à trier, faire plusieurs tris en
' commençant avec les colonnes les moins importantes pour
' la clé de tri
'4. Rajouter une autre colonne avec la comparaison (sur les 5 colonnes)
' entre la ligne courante et précédente. La comparaison devra retourner
' un booléen qui identifie si la ligne est à détruire.
' Un exemple de formule, matricielle celle-là :
' =ET(A2:E2¡:E1)
'5. Fixer en dur les valeurs retournées par cette formule (copier/coller par
valeur)
'6. Trier selon cette nouvelle colonne
'7. Détruire d'un bloc les lignes qui auront été identifiées 'doublons' par un
VRAI en valeur booléenne.
'8. Avec les lignes restantes, trier selon la colonne du numéro de ligne
original (obtenue en étape 1)
'9. Détruire les deux colonnes qu'on a rajoutées
Avise si une des étapes te cause du soucis.
Résultat < 5 secondes chez moi.
Salutations,
Daniel M.
"René Delcourt" <rdelcourt@Bluewin.ch> wrote in message
news:E519E721-4400-4A95-A169-121E847BF8A5@microsoft.com...
Merci pour ta réponse.
C'est dans ce sens que j'ai écrit ma macro qui s'avère lente sur quelques
milliers de lignes...
--
René Delcourt
Bonjour
Je n'ai pas suivi les discussions précédentes
Une proposition : en supposant que tu as 5 colonnes A à E qui sont remplies
(ligne 1 en étiquette).
En colonne F : A2&B2&C2&D2&E2 en G : =equiv(F2;$F$2:$F$10000;0)=ligne()
Faire une copie, coller les valeurs de colonne F et G (ou calcul sur ordre)
puis un filtre sur FAUX
Stéphane
"René Delcourt" <rdelcourt@Bluewin.ch> a écrit dans le message de news:
D82D2415-1823-4F44-B246-3D5257154DD7@microsoft.com...
Bonjour à tous,
Après avoir recherché à solutionner le problème dans le forum (je passe la
polémique sur une demande sur le sujet), je ne pense pas avoir trouvé
quelque
chose qui me convienne.
Plusieurs utilisateurs remplissent une feuille excel de même structure
(plusieurs colonnes).
Je reçois ces feuilles et les regroupe (ajoute) dans leur ensemble dans
une
seule feuille.
Cela provoque forcément des doublons.
J'ai essayé une méthode de comparaison sur des lignes triées mais elle est
extrêmement lente (sur 10000 lignes).
Quelqu'un peut me guider à rendre cette intégration plus performante.
Merci de votre aide.
--
René Delcourt
' Stratégie générale '1. Rajouter une colonne avec la formule donnant le numéro de ligne ' =LIGNE() '2. Fixer ce numéro en 'dur' (copier/collage spéciale par valeur) '3. Trier sur toutes les colonnes qui identifie un doublon ' si plus de 3 colonnes à trier, faire plusieurs tris en ' commençant avec les colonnes les moins importantes pour ' la clé de tri '4. Rajouter une autre colonne avec la comparaison (sur les 5 colonnes) ' entre la ligne courante et précédente. La comparaison devra retourner ' un booléen qui identifie si la ligne est à détruire. ' Un exemple de formule, matricielle celle-là : ' =ET(A2:E2¡:E1) '5. Fixer en dur les valeurs retournées par cette formule (copier/coller par valeur) '6. Trier selon cette nouvelle colonne '7. Détruire d'un bloc les lignes qui auront été identifiées 'doublons' par un VRAI en valeur booléenne. '8. Avec les lignes restantes, trier selon la colonne du numéro de ligne original (obtenue en étape 1) '9. Détruire les deux colonnes qu'on a rajoutées
Avise si une des étapes te cause du soucis. Résultat < 5 secondes chez moi.
Salutations,
Daniel M.
"René Delcourt" wrote in message news:
Merci pour ta réponse. C'est dans ce sens que j'ai écrit ma macro qui s'avère lente sur quelques milliers de lignes... -- René Delcourt
Bonjour
Je n'ai pas suivi les discussions précédentes Une proposition : en supposant que tu as 5 colonnes A à E qui sont remplies (ligne 1 en étiquette). En colonne F : A2&B2&C2&D2&E2 en G : =equiv(F2;$F$2:$F$10000;0)=ligne() Faire une copie, coller les valeurs de colonne F et G (ou calcul sur ordre) puis un filtre sur FAUX
Stéphane
"René Delcourt" a écrit dans le message de news:
Bonjour à tous, Après avoir recherché à solutionner le problème dans le forum (je passe la polémique sur une demande sur le sujet), je ne pense pas avoir trouvé quelque chose qui me convienne. Plusieurs utilisateurs remplissent une feuille excel de même structure (plusieurs colonnes). Je reçois ces feuilles et les regroupe (ajoute) dans leur ensemble dans une seule feuille. Cela provoque forcément des doublons. J'ai essayé une méthode de comparaison sur des lignes triées mais elle est extrêmement lente (sur 10000 lignes). Quelqu'un peut me guider à rendre cette intégration plus performante. Merci de votre aide. -- René Delcourt