let
    // Combiner les tables source et sélectionner les colonnes nécessaires
    Source = Table.Combine({TAB_COMPTES, TAB_CONVERSION}),
    ColonnesFiltrées = Table.SelectColumns(Source, {
        "DATE", "LIBELLE BANQUE", "BUDGET REEL", "DEBITCREDIT", "CODE",
        "DEBIT", "CREDIT", "N°", "ANNEE", "SEMAINE", "POSTE", "COMMERCE"
    }),
    
    // Modifier les types dès l'importation des colonnes filtrées
    TypesModifiés = Table.TransformColumnTypes(ColonnesFiltrées, {
        {"DATE", type date},
        {"LIBELLE BANQUE", type text},
        {"BUDGET REEL", type text},
        {"DEBITCREDIT", Currency.Type},
        {"CODE", type text},
        {"DEBIT", Currency.Type},
        {"CREDIT", Currency.Type},
        {"N°", type text},
        {"ANNEE", type text},
        {"SEMAINE", type text},
        {"POSTE", type text},
        {"COMMERCE", type text}
    }),
    // Remplacer les valeurs nulles par des valeurs par défaut
    ValeurRemplacée = Table.ReplaceValue(TypesModifiés, null, "", Replacer.ReplaceValue, {
        "LIBELLE BANQUE", "N°", "CODE", "ANNEE", "SEMAINE", "POSTE", "COMMERCE"
    }),
    ValeurRemplacée2 = Table.ReplaceValue(ValeurRemplacée, null, 0, Replacer.ReplaceValue, {"DEBIT", "CREDIT", "DEBITCREDIT"}),
    
    // Ajouter des colonnes personnalisées
    ColonneComparBudget = Table.AddColumn(ValeurRemplacée2, "COMPAR BUDGET", each [DEBITCREDIT]),
    ColonneDateFinSemaine = Table.AddColumn(ColonneComparBudget, "DATE FIN DE SEMAINE", each Date.EndOfWeek([DATE])),
    // Fusionner avec la table TAB_COMMERCES
    FusionCOMMERCES = Table.NestedJoin(ColonneDateFinSemaine, {"COMMERCE"}, TAB_COMMERCES, {"LIBELLE"}, "COMMERCES", JoinKind.LeftOuter),
    COMMERCESDéveloppé = Table.ExpandTableColumn(FusionCOMMERCES, "COMMERCES", {"CATEGORIE", "VALIDATION CCE"}, {"CCES.CATEGORIE", "VALIDATION CCE"}),
    // Fusionner avec la table Tab_ParametresPostes
    FusionParametresPostes = Table.NestedJoin(COMMERCESDéveloppé, {"POSTE"}, Tab_ParametresPostes, {"NOM COMPLET"}, "Tab_ParametresPostes", JoinKind.LeftOuter),
    ParametresPostesDéveloppé = Table.ExpandTableColumn(FusionParametresPostes, "Tab_ParametresPostes", {"CLASSIFICATION"}, {"CLASSIFICATION"}),
    // Ajouter une colonne de clé unique
    ColonneClef = Table.AddColumn(ParametresPostesDéveloppé, "Clef", each Date.ToText([DATE]) & "-" & Number.ToText(Number.Abs([DEBITCREDIT])))
in
    ColonneClef