Générer un tableau a partir d'une matrice

Oui, grâce à votre base et vos explications, j'ai réussi à adapter votre modèle à mon sujet plus complexe.

J'avoue que ca m'a valu quelques mal de tête au passage et un besoin impératif de m'isoler hors de l'open-space mais c'est tellement satisfaisant d'arriver enfin au résultat.

Je serai encore incapable d'assembler le puzzle si je n'était pas reparti de votre base.

J'ai finalement transposé mon tableau (sur le 3eme onglet) et adapté la formule à la nouvelle disposition.

Je ne sais pas s'il y avait une autre solution mais quelque soit les étapes l'essentiel reste d'atteindre l'objectif. Même si j'ai un peu "triché" en sortant la numérotation de la matrice et par mon tableau intermédiaire transposé, la solution répond aux besoins des futurs utilisateurs (dont je ferai un jour parti). C 'est toujours formateur de voir les différents chemins possibles pour arriver à un résultat. Même si ce n'est finalement pas la solution que j'ai retenu, je ne connaissais pas du tout power query avant mon poste.

Encore une fois j'ai essayer de m'aider avec Copilote et chat GPT mais les solutions proposées ne fonctionnaient pas mais les erreurs de l'intelligence artificielle m'ont permis de tester des solutions exemples et de mieux comprendre le chemin que j'empruntait pour finalement composer ma solution par moi même. Comme vous l'avez dit, c'est beaucoup d'essai-erreur.

Merci encore pour l'aide apportée. je vous joint mon fichier et je vais clôturer le sujet ce soir

Super.

Je vous ai remis le calcul du numéro dans la matrice. C'était la partie4;TEXTE(SI(v>1;r;r-1);"00")de ma formule initiale.

En gros dans le MAKEARRAY, puisqu'on crée une matrice de hauteur = le nombre de doublons, il suffit de récupérer le numéro de ligne, que j'ai appelé "r" dans le lambda (dans l'exemple ci-dessous, c'est "indice_colonne")

MAKEARRAY(nb_lignes; nb_cols; lambda(indice_ligne; indice_colonne; f(indice_ligne; indice_colonne)))

Quand il n'y a qu'une seule ligne, vous vouliez numéro = 0 (j'ai mis r-1 mais 0 aurait été identique). Et sinon, le numéro de ligne. TEXTE c'est pour le formater en 2 chiffres (avec le 0 devant).

Pour le 1 dans la formule du INDEX, c'est parce qu'on l'utilise sur une ligne et non une colonne. On passe en forme "matricielle" ou 2D. Et donc il faut lui indiquer

INDEX(mon_tableau; ligne_cherchée[ici 1 puisqu'il n'y en a qu'une]; colonne_cherchée)

En espérant que vous arriviez sur la fin de ce problème. Belle progression, je vous félicite : ce n'est pas tout le monde qui se lance dans des formules aussi complexes avec autant de motivation et de résilience.

Je viens d'ouvrir votre fichier, avant de supprimer le numéro de ma matrice, j'arrivais à ce résultat mais mon numéro doit être unique a la combinaison PF et sigle mais le sigle est identique pour un plan BPA ou BPE, il en est de même pour les spécification d'achat donc si on se base sur la matrice de donné pour générer ce numéro, on réinitialise le compteur à chaque ligne sur le tableau de donné mais mon document entre autre doit générer un numéro unique pour tout les documents que l'on crée basé sur la forme [Numéro de projet]-[PF]-[Sigle]-[00 ou numéro incrémenté]

ce problème me semblais bien plus complexe par la matrice alors que très facile à résoudre par une colonne supplémentaire.

Merci pour vos compliments, je pense que peu de monde pourront ce rendre compte de l'effort que ça a été pour y arriver avec mes connaissances limités...

j'ai beaucoup de sujet à développer, mon manager me guide, on a entre 3 et 5 heure de réunion par semaine pour m'aiguiller dans la bonne direction et faire le point sur ses attentes et mon avancement. Je peux travailler à mon rythme, et heureusement qu'il y a internet pour m aider à monter en compétence car je n'avais jamais fait ça auparavant. Même si ce n'est pas facile, c'est intéressant et chaque résolution est une petite victoire...

image

Ah oui effectivement j'ai regardé ça un peu trop rapidement. Dans ce cas la colonne additionnelle est le plus simple, vous avez raison.

Attention par contre, sur le fichier que vous m'avez joint, en feuille 3 avec la matrice transposée, les plages n'avaient pas été mises à jour et la formule renvoyait n'importe quoi. J'imagine que vous l'avez corrigé après.

Bonne fin de journée.

Oui j'ai corrigé ma formule sur mon fichier test et sur mon document définitif

=SI(R2="";"";SI(SOMMEPROD((R:R=R2)*(T:T=T2))=1;"00";TEXTE(SOMMEPROD(($R$2:R2=R2)*($T$2:T2=T2));"00")))

Merci encore pour votre aide précieuse.

Bonne fin de journée

Rechercher des sujets similaires à "generer tableau partir matrice"