Tri simultané feuilles important formules

Didj437

XLDnaute Nouveau
Bonjour à tous,


J'ai fouillé dans toutes les solutions de tri mais je n'ai malheureusement pas trouvé de solution à mon problème.

Je m'explique :

je travaille avec Excel 2003 et suis donc limité à environ 250 colonnes. Comme j'ai besoin d'un tableau de plus de 300 colonnes, j'ai réalisé ce tableau sur 2 feuilles distinctes (feuille1 et feuille2).

Les colonnes A, B et C sont identiques dans les 2 tableaux (nom, prénom et numéro d'ordre)

J'ai donc, par facilité, pour ne par recopier tous les noms (il y en a 2000 avec des espaces à compléter), 'importés' les noms encodés dans feuille1 dans feuilles2 au moyen du signe =

Le problème est que lorsque, dans la feuille1, je demande un tri alphabétique (via un bouton), basé sur les valeurs de la colonne B, de tout le tableau repris sur la feuille1, la colonne B de la feuille2 est également triée (jusque là, cela ne me pose pas de problème) mais les autres colonnes liées à cette colonne B de la feuille2 ne correspondent plus (elles ne suivent pas le tri) à la valeur dans B initiale.

J'ai utlisé ceci :

Sheets("feuille1").Range("b2647:hz2675").Sort key1:=Sheets("feuille1").Range("b2675"), order1:=xlAscending

Mon but est que lorsque je demande le tri via le bouton placé sur la feuille1 que le tri se fasse également sur la feuille2 mais que les colonnes de la feuille2 suivent ce tri. Or pour l'instant ce tri complet ne fonctionne que sur la feuille1

Si quelqu'un pouvait m'aider, ce serait vraiment sympa. Je planche depuis 2 jours...

Didier
 

skoobi

XLDnaute Barbatruc
Re : Tri simultané feuilles important formules

Bonjour,

Le problème est que lorsque, dans la feuille1, je demande un tri alphabétique (via un bouton), basé sur les valeurs de la colonne B, de tout le tableau repris sur la feuille1, la colonne B de la feuille2 est également triée
Pas avec le code que tu viens de donner en tout cas!
Quel est le code qui fait le tri de la feuille 2?

Bon après-midi
 

job75

XLDnaute Barbatruc
Re : Tri simultané feuilles important formules

Bonjour Didj437, Skoobi,
Trier le tableau de la feuille2 avant de trier la feuille1, les formules suivent automatiquement. Puis trier la feuille1, les 2 tris doivent bien sûr se faire avec les mêmes critères.
A+
 

pierrejean

XLDnaute Barbatruc
Re : Tri simultané feuilles important formules

bonjour Didj437

Si tu fait toujours ton filtre sur la colonne B , voila une solution

Edit : Salut Skoobi, salut job
 

Pièces jointes

  • Didji.zip
    10.9 KB · Affichages: 31
  • Didji.zip
    10.9 KB · Affichages: 35
  • Didji.zip
    10.9 KB · Affichages: 35

pierrejean

XLDnaute Barbatruc
Re : Tri simultané feuilles important formules

Re

Et compte tenu de la remarque fort judicieuse de job (bravo !!) on simplifie en:

Code:
Sub trib()
Sheets("Feuil2").Cells.Sort Key1:=Sheets("Feuil2").Range("B1"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
Sheets("Feuil1").Cells.Sort Key1:=Sheets("Feuil1").Range("B1"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
End Sub
 

job75

XLDnaute Barbatruc
Re : Tri simultané feuilles important formules

Re, salut pierrejean,
Hum, bon il faut ensuite je pense retrier la feuille2, sur les colonnes avec formules, puisque les formules suivent... mais il faudrait voir le fichier, car je n'ai pas bien compris où sont les cellules liées.
A+
 

pierrejean

XLDnaute Barbatruc
Re : Tri simultané feuilles important formules

Re

Dans l'hypothese ou le nouveau tri se fait apres l'adjonction d'une donnée , je pense que le modele suivant convient (je fais l'autofill sur le nombre de ligne de la feuille 1 au lieu de la feuille 2)
Mais tu as raison job ,il serait bon que l'on ait de plus amples renseignement sur l'usage du fichier car avec ces tris on est très vite 'en vrille'
 

Pièces jointes

  • Didji.zip
    11.4 KB · Affichages: 25
  • Didji.zip
    11.4 KB · Affichages: 24
  • Didji.zip
    11.4 KB · Affichages: 27

Didj437

XLDnaute Nouveau
Re : Tri simultané feuilles important formules

Bonjour à tous et merci pour votre aide.

Je vais essayer d'être plus précis dans mon explication (je ne saurais pas envoyer le fichier car il fait 30 MB ! Il s'agit d'un programme réalisé pour effectuer différents classements en compétition moto.

Dans les feuilles 'feuille1' et 'feuille2' (en fait, j'en ai 5 identiques mais si j'ai la solution pour 2, ce sera valable pour les autres aussi) les colonnes A, B et C sont toujours identiques (nom, prénom, licence).

Toutes les 20 lignes environ, je dois pouvoir faire un tri alphabétique (qui doit être opéré à la fois sur 'feuille1' et 'feuille2'). Par exemple, le bloc pour le premier tri alphabétique est b7 à hz39 trié sur base de RANGE(b39). Toutes les colonnes de D à HZ doivent suivrent les colonnes B,C initiales aussi bien sur la feuille1 que sur la feuille2. La colonne A doit rester fixe.

Il ne s'agit donc pas de cellules liées mais bien de cellules 'adjacentes'.
En fait, après le tri chaque ligne doit rester identique mais avec un positionnement différent, ce sur les 2 feuilles feuille1 et feuille2. Tout cela en 1 clic si possible.

J'ai essayé la solution de PierreJean mais il y a un bug 1004 car les cellules ne sont pas toutes de taille identiques. En outre la solution ne délimite pas la zone de tri : elle prend l'ensemble de la page alors que je veux me limiter à la zone b7 = hz39 (soit les lignes complètes de b7 à b39) sans la colonne A.

J'espère que c'est plus clair et je vous remercie tous de vous intéresser à mon problème.

Didj
 

job75

XLDnaute Barbatruc
Re : Tri simultané feuilles important formules

Re,

Dans les feuilles 'feuille1' et 'feuille2' (en fait, j'en ai 5 identiques mais si j'ai la solution pour 2, ce sera valable pour les autres aussi) les colonnes A, B et C sont toujours identiques (nom, prénom, licence).

C'est pour ces colonnes ABC toujours identiques que je parlais de "cellules liées". En feuille2, vous devez avoir pour toutes les cellules des colonnes ABC des formules du genre =Feuil1!$A$1. Sinon, comment se fait le lien avec la feuille1 ???

Sans fichier on aura du mal à se comprendre. Il suffit d'envoyer une copie en ne gardant que quelques lignes (représentatives du problème) des feuilles 1 et 2 avec leurs formules.

A+
 

pierrejean

XLDnaute Barbatruc
Re : Tri simultané feuilles important formules

Re

Tout cela reste un peu confus pour moi
Tu devrais pouvoir creer une copie de ton fichier avec seulement quelques lignes dans 2 feuilles et en nous precisant (sur 2 autres feuilles ) le resultat que tu attends
apres la manip que tu voudras bien nous decrire
Dans le genre du fichier que j'ai posté plus haut

Edit: completement OK avec toi job
 

Didj437

XLDnaute Nouveau
Re : Tri simultané feuilles important formules

Voilà,

J'ai joint un fichier réduit qui ne reprend que quelques donnés sur 2 feuilles.
J'y ai joint un comment
J'espère que c'est un peu plus clair...

Le mot de passe du zip est 123
 

Pièces jointes

  • CLST.zip
    14.7 KB · Affichages: 33

job75

XLDnaute Barbatruc
Re : Tri simultané feuilles important formules

Bonsoir Didj437,

Vos tableaux correspondent bien à ce que j'attendais (liaisons en colonnes BC feuille2).

Il y a seulement un point qui pose problème : la cellule B11 en feuille2 contient une formule de liaison qui renvoie 0 puisque la cellule B11 en feuille1 est vide. Les 2 feuilles ne sont donc pas identiques.

Si vous pouvez faire en sorte qu'il n'y ait pas de liaisons avec les cellules vides, alors il suffit d'écrire le code suivant (en se basant sur votre 1er message) :

Code:
Sheets("feuille2").Range("b2647:hz2675").Sort key1:=Sheets("feuille2").Range("b2675"), order1:=xlAscending
Sheets("feuille1").Range("b2647:hz2675").Sort key1:=Sheets("feuille1").Range("b2675"), order1:=xlAscending
Sheets("feuille2").Range("b2647:c2675").Sort key1:=Sheets("feuille2").Range("b2675"), order1:=xlAscending
A+
 
Dernière édition:

Didj437

XLDnaute Nouveau
Re : Tri simultané feuilles important formules

Bonjour,

A mon avis, afin de rendre la colonne b de la feuille2 totalement identique, il y a lieu d'insérer des 'zzz' (avec format conditionnel de manière à ce que cela n'apparaisse pas). Cela favorisera également le tri alphabétique.

Je vais m'y atteler tout à l'heure et insérer les lignes programme pour les autres feuilles qui doivent suivre le même raisonnement.

Quoiqu'il en soit, je dirai cela fonctionne ou non.

Un grand merci pour votre aide Job.

Didier
 

Discussions similaires

Réponses
4
Affichages
248
  • Résolu(e)
Microsoft 365 Code de tri
Réponses
22
Affichages
316

Statistiques des forums

Discussions
312 239
Messages
2 086 497
Membres
103 236
dernier inscrit
Menni