Modification de caractères selon détection d'un certain caractère

Ca m'a l'air nickel. J'ai juste un petit soucis sur un point mais ca c'est un point que je n'avais pas anticipé, les VCCO étaient de base dans le fond des données et donc forcément vu que ce ne sont pas des IO, il n'y a pas eu besoin de swap ou de tri, l'idéal c'est qu'ils soient quand même rangés avec leurs banks respectifs, exemple VCCO_0 est dans la première partie des banks donc la 0, VCCO_13 dans la partie bank 13 etc, pas d'ordre précis dans le groupe que ca soit en haut ou en bas du groupe (même si l'idéal serait dans le haut mais ce n'est vraiment pas important).

J'ai un doute également, avec l'échange de lignes, les lignes triés perdent leur affectation à la colonne A (qui est dans notre jargon les numéros de pins) du coup si je ne trompe pas ?

Merci d'avance.

Bonjour,

Je n'ai rien compris aux VCCO_0... Est-ce que je pourrais avoir un exemple de ce qui est voulu avec quelques explications?

Oui dans l'exemple je n'échange que les codes pour faire plus vite et dans le cas de l'exemple, mais à partir du moment où je sais quelles lignes échanger je peux échanger toute la ligne sans réel problème, mais avant de passer à ça j'aimerais finir le sujet des codes.

Bonjour,

Bien sur ! Pour le moment le tableau est trié par numéro de Bank donc 0 à X sauf les VCCO_X qui sont en bas de tableau et isolés. Chaque VCCO doit être mis dans le même groupe que sa bank attribué(colonne C). Par exemple VCCO_0 doit faire partie du groupe 0, VCCO_13 doit faire partie du groupe 13 etc.

En petit échantillon :

VCCO_0

IOBANK0_X_X

[...]

VCCO_13

IOBANK13_X_X

[...]

VCCO_14

IOBANK14_X_X

etc

Encore un énorme merci pour le temps accordé !

D'accord je comprends mieux

Je vois qu'ils sont en double voir plus, il faut faire remonter toutes les lignes?

Exemple le VCCO_16 est en 4 exemplaires.

Exactement, les doublons sont normaux

Bonjour,

Je pense être parvenu à réaliser ce qui est demandé, les VCCO_X se rangent bien derrière la première ligne qui a IOBANKX, les 3 lignes sont désormais triées et déplacées, j'ai mis le résultat à partir de la colonne I.

2test-2.xlsm (69.67 Ko)

Bonjour, encore merci pour le temps accordé et cette rapidité sans nom !

Il semble qu'il y ait un problème dans le tri des TX et des LX sur la dernière version. Contrairement à la version d'avant les TX ne sont pas dans l'ordre décroissant et de même pour les LX. Tout le reste m'a l'air parfait, je referais un test complet sur les numéros de pins plus tard pour voir si tout est resté pareil en liaison.

VCCO_13
IOBANK13_T3_L24P
IOBANK13_T0_L1P
IOBANK13_T0_L1N
IOBANK13_T0_L2P
IOBANK13_T0_L2N
IOBANK13_T0_L3P
IOBANK13_T0_L3N
IOBANK13_T0_L4P
IOBANK13_T0_L4N
IOBANK13_T0_L5P
IOBANK13_T0_L5N
IOBANK13_T0_L6P
IOBANK13_T0_L6N
IOBANK13_T1_L7P

Un énorme merci d'avance.

Oups en effet, comme je suis passé à deux tableaux pour le tri, j'ai oublié d'en inclure un dans le processus d'échange des lignes...

C'est réglé:

2test-2.xlsm (69.89 Ko)

On approche de la fin mais il y a encore un petit problème, les VCCO_0 sont dans le fond des données triées.
Reste que ça et après je peux partir sur une vérification générale.

Je pensais que cela aurait pu être à ma portée en prenant mon temps mais clairement pas même avec mes bases en programmation ...

Bonjour,

les VCCO_0 n'ont pas de IOBANK derrière lesquelles les ranger, je n'aurais pas compris la règle de rangement?

Oui avec toutes les conditions et règles à prendre en compte ça rajoute beaucoup de complexité au code...

Bonjour,

Je pense plutôt que mon explication n'était pas clair, toujours compliqué d'expliquer quand cela parait évident pour nous. Et c'est compréhensible que cela soit compliqué à appliquer avec des explications qui viennent au fur et à mesure.

Les VCCO sont rattachés à la bank 0, au final n'importe quel ligne est rattaché à une bank (colonne C) sauf les alimentations qui sont en N/A et qui sont générales.

Tous les _X signifie qu'ils sont rattachés à une bank/groupe, VCCO_0, IOBANK0 et n'importe quel pin en _0 vont dans le groupe 0, VCCO_13, IOBANK13 et n'importe quel pin en _13 vont dans le groupe 13 etc. Il est possible que dans un groupe il n'y est pas d'IOBANK_X (et pour le groupe 0 c'est généralement comme ça pour cette catégorie de composant étant un groupe spécial).

Surtout que ce fichier sera utilisé pour des tableaux qui peuvent être clairement différent de celui la mais je m'adapterais, c'est déjà une énorme basé proposé. Techniquement nous avons un autre fichier qui a également été développé en VBA avec une multitude de fonctions mais très obsolète ou plutôt pas très adapté à la situation, d'où cette demande qui servira à faciliter le travail avec l'autre fichier complexe.

Encore un énorme merci d'avance.

Bonjour,

Du coup si je comprends bien... il faudrait que je mette les VCC_X pile avant la première ligne qui a le même numéro de pin?

Bonjour,

Les VCC_X doivent faire partie du groupe (bank) X correspondant (colonne C). Les numéros de pins (colonne A) doivent juste garder leur correspondance originale avec la colonne B, techniquement on n'y prête pas attention. (surtout que le lien est déjà fait dans le code actuel)

Actuellement le code est parfait, juste les VCCO_0 ne sont pas à leur place car je suppose qu'il y a une condition pour remettre les VCCO à leur place, "s'il y a un IOBANK alors on range les VCCO", du coup il est possible qu'il n'y est pas d'IOBANK dans un groupe ce qui empêche le rangement.

Si on définit X comme le numéro de bank/groupe (colonne C), chaque string_X doit faire partie du groupe X pour résumer. Si le rangement est fait, cela m'importe si VCCO est dans le haut ou le bas des données (si ca peut faciliter la tache en évitant un rangement supplémentaire, par préférence on les voudra dans le haut mais vraiment pas important).

En espérant que cela soit clair, si questions je suis toujours disponible

Un énorme merci d'avance (des mercis ne suffisent probablement plus à ce stade d'aide j'en ai bien conscience)

Ok on s'est compris mais c'est le vocabulaire que j'utilisais qui n'était pas bon

J'ai juste eu à passer un test en commentaire dans ma fonction de rangement et je pense que le résultat est bon cette fois!

1test-2-2.xlsm (69.82 Ko)

C'est un forum de bénévole, donc non pas besoin de plus que des mercis, vous répondez vite et tentez d'expliquer c'est déjà super, on a des membres qui ne vont pas jusque là...

Il ne restera plus qu'à clore le sujet quand il sera résolu et ce sera parfait

Ca m'a l'air nickel ! Je vais faire des tests pendant quelques jours pour voir la compatibilité avec différents tableaux sources et voir ce que ca donne.

En tout cas encore une fois un énorme merci, pour le temps investi et la patience, je pense également que même pour un forum de bénévoles peu de monde aurait eu la patience d'aller jusqu'au bout. Je vais évidemment prendre le temps de comprendre le code pour essayer de l'adapter dans le futur et de mon côté tenter de faire une interface qui utilisera ce travail de titan puisque c'est quand même le but que je produise quelque chose derrière.

Je clos le sujet d'ici mercredi/jeudi je pense (en espérant que tout soit ok)

Rechercher des sujets similaires à "modification caracteres detection certain caractere"