Bonjour,
une proposition en PQ qui peut amelioree par les excperts PQ
Une proposition qui rectifie notamment la conversion en nombre décimal des 3 dernières colonnes (ce n'est pas un espace en séparateur de milliers, mais un espace insécable - Il faut alors utiliser les paramètres régionaux, expliqué dans ce fil)
Il suffit de modifier le chemin et le nom du fichier dans la cellule M2
Attention, j'ai utilisé ta méthode de conversion, mais comme le précise raccourcix, il serait préférable de modifier la méthode d'extraction du fichier txt à partir de l'application source
let
Source = Csv.Document(File.Contents(Fich),11,{0, 16, 35, 50, 53, 62, 76, 84, 120, 133, 153},ExtraValues.Ignore,65001),
// Import du fichier avec des tailles de colonnes fixes
Filtre = Table.SelectRows(Source, each List.Contains({"0".."9"}, Text.Start(Text.Trim([Column1]), 1))),
// Sélection des lignes de la 1ère colonne qui commencent par un chiffre
ListCols = {"Date", "Pièce", "écriture", "Type", "N° compte", "Tiers", "Code", "Libellé de l'écriture", "Débit", "Crédit", "Solde"},
// Liste des en-têtes des colonnes finales
LTransfo = List.Transform(ListCols, (col)=>{col, each Text.Trim(_)}),
// Fonction de conversion afin de supprimer les espaces
Rename = Table.RenameColumns(Filtre,List.Zip({Table.ColumnNames(Filtre),ListCols})),
// Renommage des colonnes
SupprEspaces = Table.TransformColumns(Rename,LTransfo),
// Suppression des espaces via la fonction spécifiée plus haut
InsertDate = Table.TransformColumns(SupprEspaces, {{"Date", each Date.From(_ & Text.Split(SupprEspaces[Pièce]{0},"-"){1}), type date}}),
// Inscription de la date, l'année étant récupérée dans la colonne "Pièce"
TypeNumber = Table.TransformColumnTypes(InsertDate, {{"Débit", type number}, {"Crédit", type number}, {"Solde", type number}}, "af-ZA")
// Transformation en type number, les séparateurs de milliers étant des espaces insécables
in
TypeNumber
Le fichier :