Erreur '1004' Méthode SORT de la classe Range a échoué

Bonjour à l'équipe.

Je bute sur un petit problème de tri croissant horizontal de données.

Tout est dans le fichier en annexe.

1) On recopie les données de base ( ---> Est-il possible de ne pas copier la mise en forme, mais seulement les valeurs ?)

2) On trie les 40 colonnes de données, Ligne par ligne ---> MAIS là j'obtiens l'erreur "Erreur d'exécution '1004': LA méthode Sort de la classe Range a échoué'

Merci beaucoup pour votre aide.

Système: Excel 2010 + Win7

Z.

50test-tri.zip (119.73 Ko)

Salut,

Je te propose une modification de ton code qui devrait réaliser ce que tu désires.

Je n'ai pas trop de temps immédiatement, mais ce serait déjà bien de savoir si ça va dans le bon sens. Si oui, on pourra voir pour nettoyer au maximum ce code de base.

Cordialement.

146test-tri-v1.zip (123.32 Ko)

Bonjour,

Merci pour ce début de solution.

En fait, le tri doit être croissant, du plus petit à gauche au plus grand à droite.

Mais un autre problème me saute aux yeux: les zéros ne doivent pas être pris en compte !

J'avais essayé de remplacer les 0 par un X avant de faire le tri mais un 10 est alors modifié en 1X et n'est donc plus correctement classé car il doit rester égal à 10 ! (

J'ai aussi "remplacé" tous les 0 par 999 mais là aussi un 10 devient 1999 !

En fait, le but est donc de faire un classement des 10 scores les plus bas d'une série de 40 mais sans considérer les zéros qui représenteraient des manches non courues.

Merci

Z.

Encore un code à la va-vite qu'il faudra nettoyer si ça correspond à ton attente.

142test-tri-v2.zip (123.36 Ko)

Bonjour Yvouille,

SUPER, Ce code est une très bonne base MERCI

Pour info, aux tests effectués, j'obtiens encore parfois une erreur 1004 (Référence tri non valide) concernant la colonne EA.

J'avais essayé de supprimer la colonne EA après traitement pour éviter cette "Erreur 1004" dans certains cas de traitement ultérieurs mais elle subsiste cependant

En annexe, par exemple une configuration qui bugge au niveau de l'instruction .Apply (notamment lorsqu'on relance le tri une deuxième fois.)

Z.

Re,

Je ne sais pas ce que tu as fait avec mon fichier, mais lorsque j'essaie d'ouvrir ton fichier modifier, j'ai le message d'erreur ci-dessous qui apparait :

capture

Je ne comprends pas pourquoi tu as modifié un fichier qui fonctionnait parfaitement il me semble.

Si tu as besoin de quelque chose en plus, indique moi quoi et j’essaie de modifier mon fichier en conséquence.

Amicalement.

Bonjour Yvouille,

Ben pour répondre à ta question, de mon côté, le fichier plantait parfois à la ligne .Apply au niveau du tri de la colonne AE, d'où mon idée d'effacer cette colonne en fin de traitement.

(Plantage lors d'ajout ou de suppression de données dans le tableau de départ)

J'ai fini par lancer l'enregistreur de Macro pour "réécrire" ta méthode de tri qui est très pratique et depuis ça plante plus.

Enfin, pur annuler au message très bizarre relatif à la perte de données (que j'ai aussi eu comme celui que tu montre ici) j'ai resauvé le fichier sous un autre nom et plus de problème !?

Merci pour ton aide précieuse car tout fonctionne OK maintenant.

Rechercher des sujets similaires à "erreur 1004 methode sort classe range echoue"