Bonjour,
Je désire fractionner la colonne PV dynamiquement en 3 colonnes respectivement nommées DA, CS, CC. avec la fonction Splitter.SplitTextByPositions.
La colonne PV est de longueur différente :
La longueur de PV est égal à = Nb DA*Taille DA & Nb CS*Taille CS & Nb CC*Taille CC.
Nb DA, Nb CS et NB CC pouvant varier entre 0 et 99.
Les cellules relativent à "Taille DA", "Taille CS" et "Taille CC" sont nommées
Mais je n'arrive pas à implémenter Splitter.SplitTextByPositions avec les données des tailles et nombres
Sur le fichier joint, la feuille
"Source" possède les informations pour effectuer ce fractionnement,
"exemple avec 0 50 100" est un exemple avec un fractionnement purement arbitraire :
= Table.SplitColumn(#"Type modifié", "PV", Splitter.SplitTextByPositions({0, 50, 100}), {"DA", "CS", "CC"})
En utilisant la fonction "Colonne à partir d'exemple", j'obtient la fonction suivante qui semble fonctionner :
VB:
= Table.AddColumn(#"Type modifié", "Personnalisé", each let splitPV = Splitter.SplitTextByDelimiter(" ", QuoteStyle.None)([PV]) in Text.Combine({Text.Reverse(Text.Middle(Text.Reverse(splitPV{0}?), 9)), Text.Middle(splitPV{2}?, 34, 1)}), type text)
Ca n'est pas possible de le faire pour les autres colonnes car 3 lignes ne sont pas suffisantes pour que Powerquery en détermine une règle probante ; mais tu peux essayer sur ta base de données