Trier un tableau Temporaire Multi Colonnes(24) sur une Colonne

ChTi160

XLDnaute Barbatruc
Bonjour ,
je cherche , mais ne trouve pas malgré les QuickSort et autres procédures testés
à trier un tableau (avec intitulé de colonnes ) que j'ai constitué d’après des données récupérées dans plusieurs Feuilles d'un Classeur.
cela c'est OK !
je cherche à trier ce tableau de 24 colonnes et x Lignes en fonction des valeurs de la Colonne 1 de mon tableau.
si vous pouviez m'orienter vers un exemple de procédure , un lien , qui va bien pour ce genre de traitement Lol
Bonne fin de journée
Jean marie
une Exemple de Ligne de Données .
1020 - 1314-44- vide-vide- 18- vide- 77-90-vide- 76-vide-42- 55- vide-vide-76-vide-90-vide-vide-88- M_1_2018-2
Dans l'attente
Bonne fin de journée
Jean marie
 

ChTi160

XLDnaute Barbatruc
Bonjour Jacques
Content de te lire !
j'ai constate que si je trie le tableau directement après sa création (c'est a dire la récupération des données dans les différentes feuilles) le tri n'est pas correct.
si je colle ce tableau dans une feuille et que j'utilise ta macro TriTableau2D
VB:
Sub TriTableau2D()
  Dim Tab_Interventions()
  Tab_Interventions = [B1:Y63].Value  ' Tableau 2D 'B1 est la Ligne d’entêtes
 
Tri Tab_Interventions(), 1, LBound(Tab_Interventions, 1) + 1, UBound(Tab_Interventions, 1) 'd'ou le +1 ligne d’entête non prise en compte lors du tri ?
[AA1].Resize(UBound(Tab_Interventions, 1), UBound(Tab_Interventions, 2)).Value = Tab_Interventions  '

End Sub

C'est OK !

Peux tu me dire comment faire pour que le tableau puisse être trié sans être oblige de passer par une feuille .
peut être un problème de format de la Colonne 1 du Tableau .
voir fichier pour explications lol
merci par avance
jean marie
 

Pièces jointes

  • TriTableau Chti160.xlsm
    34.9 KB · Affichages: 24

ChTi160

XLDnaute Barbatruc
Re jb
Si , j ai mis les trois tableaux pour montrer les differents resultats.
J ai dis : je charge un tableau
Avec les donnees de plusieurs feuilles (24 colonnes , x lignes) et c est ce tableau resultant que je veux trier directement avec ta macro.
Mais l utilisation de la macro sur ce tableau ne donne pas le bon resultat(voir fichier)
Plage de gauche donnees issues du tableau , au centre l action de la macro apres chargement de la plage (de gauche),puis la plage de droite c est lorsque je trie le tableau directement dans la macro et que je la colle dans la feuille.
Merci de ton retour
Jean marie
 

BOISGONTIER

XLDnaute Barbatruc
Repose en paix
Je ne comprends pas

Code:
Option Explicit
Option Compare Text
Sub TriTableau2D()
  Dim Tab_Interventions()
  Tab_Interventions = [B2:Y63].Value    'on recupere  les valeur de la plage                                             ' Tableau 2D
  Tri Tab_Interventions(), 1, LBound(Tab_Interventions), UBound(Tab_Interventions)
  [AA2].Resize(UBound(Tab_Interventions), UBound(Tab_Interventions, 2)).Value = Tab_Interventions     ' Value2 pour les dates Laeticia90
End Sub



jb
 

Pièces jointes

  • Copie de TriTableau Chti160-1.xlsm
    33.9 KB · Affichages: 25

ChTi160

XLDnaute Barbatruc
Re Jacques

Effectivement on ne se comprend pas lol
c'est pourtant simple pour moi ! lol
Pour faire simple ,je ne cherche pas a trier une plage de cellules , mais un array()

j'ai donc un tableau nomme "Tab_Interventions" que j'ai remplis par des Boucles sur plusieurs feuilles
j’obtiens un Tableau de 24 colonnes et X Lignes (ici 63 lignes dont une ligne d’entêtes)
je voudrai avant d'exploiter le Contenu de ce Tableau , le Trier par rapport à la Colonne 1 du Tableau et en Ascendant.
sans prendre en compte la Première Ligne (Entêtes) j'avais mis pour celà : LBound(Tab_Interventions) +1
j'ai donc comme procédure :
VB:
Option Explicit
Option Compare Text
Sub TriTableau2D()
 
Tri Tab_Interventions(), 1, LBound(Tab_Interventions) +1, UBound(Tab_Interventions)

[AA2].Resize(UBound(Tab_Interventions), UBound(Tab_Interventions, 2)).Value = Tab_Interventions     '
End Sub
merci de l’intérêt que tu portes a ma demande .
jean marie
 
Dernière édition:

ChTi160

XLDnaute Barbatruc
Re jb

Bon je vais te laisser tranquille !.
je n'arrive pas a expliquer ma demande tant pis ! lol
je résume lol
Pour chaque feuilles de mon classeur qui se nomment feuille : "M_x_2018" , je récupère dans un tableau Tab_DB , les données de la plage de données de cette feuille , je fais une boucle sur ce tableau "Tab_BD" , je redimensionne mon tableau "Tab_Interventions (24,x)" et je récupère les valeurs de ce Tableau "Tab_BD" , je veux après avoir récolté l'ensemble des données des Feuilles "M_x_2018" , trier les données du Tableau "Tab_Interventions" pour une meilleurs exploitation de ces Données.
Merci
Bonne fin de Soirée
Jean marie
 
Dernière édition:

Statistiques des forums

Discussions
315 097
Messages
2 116 185
Membres
112 679
dernier inscrit
Yupanki