dionys0s
XLDnaute Impliqué
Salut le forum
j'ai développé, à partir du code trouvé sur cette page, une fonction de tri Shell (infos ici, ici ou encore ici) de variables tableau à 2 dimensions, et je me demandais dans quelle mesure il serait judicieux de la partager.
Cette fonction propose donc, sur une variable tableau, de faire un tri qui peut être :
* Vertical (tri classique qu'on a l'habitude de faire sur des feuilles XL) ou Horizontal (moins commun).
* Trier tout ou une portion seulement de la variable tableau
* Tri croissant / décroissant, avec autant de clé de tri (colonnes pour un tri vertical, lignes pour un tri horizontal) qu'on veut, et dans n'importe quel ordre (par exemple colonne 1, puis 3, puis 2, puis 21 etc...)
* De ne trier qu'une ligne (ou colonne) sur 2, 3, 4 etc... (par exemple, pour un tableau dont les lignes vont par ensemble de plusieurs lignes forcément "solidaires", les lignes solidaires de celle sur laquelle le tri est fait seront déplacées avec cette même ligne. Pas forcément très facile à expliquer, j'espère que ce sera compréhensible dans mon exemple, avec les formats et tout et tout)
* Le tout compatible en Base 0 et 1
Mon fichier exemple comporte un seul onglet qui contient :
* Un tableau 60x30 qui contient les données à trier (on y met exactement ce que l'on veut)
* Un tableau 60x30 qui "réceptionne" le tableau trié.
* Entre les 2 tableau, les paramètres de tri. Ne pas lancer la macro tant que tous les paramètres ne sont pas sur fond vert.
* Les deux tableaux sont mis en forme de manière à lire plus facilement les données pour vérifier la cohérence du tri effectué. Les règles de cette mise en forme, ainsi que des paramètres sont détaillées dans la feuille, à droite du tableau recevant les données triées.
Le code contient 2 modules dont on peut à loisir modifier l'Option Base (l'option Base du module APPELS et le paramètre LBase tablo dans l'onglet doivent cependant être identiques, pour la vérification des paramètres). C'est surtout le code du module "GENERIK" qui est propre, le code du module "APPELS" ayant principalement été développé pour bâtir ce fichier exemple.
Voilà voilà. En gros j'aimerais avoir votre avis sur la qualité de ce "truc", sa fiabilité, son intérêt, les axes d'amélioration, les bugs etc., et surtout s'il est fiable pour être partagé en contribution de ce forum.
Bien à vous
dionys0s
j'ai développé, à partir du code trouvé sur cette page, une fonction de tri Shell (infos ici, ici ou encore ici) de variables tableau à 2 dimensions, et je me demandais dans quelle mesure il serait judicieux de la partager.
Cette fonction propose donc, sur une variable tableau, de faire un tri qui peut être :
* Vertical (tri classique qu'on a l'habitude de faire sur des feuilles XL) ou Horizontal (moins commun).
* Trier tout ou une portion seulement de la variable tableau
* Tri croissant / décroissant, avec autant de clé de tri (colonnes pour un tri vertical, lignes pour un tri horizontal) qu'on veut, et dans n'importe quel ordre (par exemple colonne 1, puis 3, puis 2, puis 21 etc...)
* De ne trier qu'une ligne (ou colonne) sur 2, 3, 4 etc... (par exemple, pour un tableau dont les lignes vont par ensemble de plusieurs lignes forcément "solidaires", les lignes solidaires de celle sur laquelle le tri est fait seront déplacées avec cette même ligne. Pas forcément très facile à expliquer, j'espère que ce sera compréhensible dans mon exemple, avec les formats et tout et tout)
* Le tout compatible en Base 0 et 1
Mon fichier exemple comporte un seul onglet qui contient :
* Un tableau 60x30 qui contient les données à trier (on y met exactement ce que l'on veut)
* Un tableau 60x30 qui "réceptionne" le tableau trié.
* Entre les 2 tableau, les paramètres de tri. Ne pas lancer la macro tant que tous les paramètres ne sont pas sur fond vert.
* Les deux tableaux sont mis en forme de manière à lire plus facilement les données pour vérifier la cohérence du tri effectué. Les règles de cette mise en forme, ainsi que des paramètres sont détaillées dans la feuille, à droite du tableau recevant les données triées.
Le code contient 2 modules dont on peut à loisir modifier l'Option Base (l'option Base du module APPELS et le paramètre LBase tablo dans l'onglet doivent cependant être identiques, pour la vérification des paramètres). C'est surtout le code du module "GENERIK" qui est propre, le code du module "APPELS" ayant principalement été développé pour bâtir ce fichier exemple.
Voilà voilà. En gros j'aimerais avoir votre avis sur la qualité de ce "truc", sa fiabilité, son intérêt, les axes d'amélioration, les bugs etc., et surtout s'il est fiable pour être partagé en contribution de ce forum.
Bien à vous
dionys0s