Power query - SIERREUR

Bonsoir,

Je suis à la recherche d'une solution pour gérer les erreurs dans Power Query, Je veux transformer les éléments de la colonne B pour obtenir ceux de la colonne H.

Le résultat d'une colonne personnalisée renvoie Error. Existe t'il une fonction permettant de gérer cette erreur ?

En espérant avoir été assez clair.

Bonne fin de journée.

Cordialement.

5gengv.xlsx (29.70 Ko)

Bonjour Zebulon2

Si j'ai bien compris, voici

image

Mais je pense que ce n'est pas ce que tu souhaites

Pourquoi vouloir transformer une colonne qui contient du texte en Integer 64 bits

Je m'interroge également sur la finalité du traitement ?

A+

Bonjour,
Un exemple.
Cdlt.

14gengv.xlsx (27.75 Ko)
let
    Source = Excel.CurrentWorkbook(){[Name="Base_grille"]}[Content],
    RemovedColumns = Table.SelectColumns(Source,{"NumLot", "Type", "Etage"}),
    AddedCustom = Table.AddColumn(RemovedColumns, "Custom", each try Number.ToText(Number.From([NumLot]),"00") otherwise [NumLot])
in
    AddedCustom

Bonsoir à tous !

Une autre proposition :

=Text.PadStart([NumLot],2,"0")

Bonsoir BrunoM45, Jean-Eric,

Merci pour vos réponses. Comme tu l'as deviné Bruno, ce n'est cette réponse que j'attendais.

Merci Jean-Eric pour ta contribution, c'est tout à fait ce que je recherchais.

Pourrais tu, si possible, m'expliquer l'utilisation des différentes fonctions ? Si j'ai bien compris, Try otherwise correspondrait à un sierreur mais je ne maitrise pas trop l'usage des Number.ToText et Number.From.

Encore merci pour le coup de main.

Bonne fin de journée.

Cordialement.

Re,
J'ai mis quelques liens vers l'aide de Power Query pour les fonctions utilisées.
A te relire pour un complément d'informations.
Bonne lecture.
Cdlt.

16gengv.xlsx (29.34 Ko)

Sinon, une autre manière d'aborder le sujet :

let
    Source = Excel.CurrentWorkbook(){[Name="Base_grille"]}[Content],
    RemovedColumns = Table.SelectColumns(Source,{"NumLot", "Type", "Etage"}),
    AddedCustom" = Table.AddColumn(
        RemovedColumns,
        "Custom",
        each if Value.Is(Value.FromText([NumLot]),type number) then
            Number.ToText(Number.From([NumLot]),"00") 
        else [NumLot])
in
    AddedCustom
10gengv-v2.xlsx (30.19 Ko)

re,

Bonsoir JFL

@Jean-Eric,

Merci pour la documentation.

Si j'ai bien compris :

Number.ToText combiné avec try otherwise permet d'extraire les valeurs numérique d'un champ texte, (Number.From([NumLot]),"00") permet de formater ces valeurs numériques sur deux caractères dans le cas des chiffres entre 1 et 9.

Il ne me reste plus qu' à explorer toutes les possibilités de PQ qui me semblent bien vastes.

@JFL

Merci pour la proposition, surprenante de simplicité, pas encore tout saisi mais je vais creuser.

En tout cas, merci à vous deux pour le partage de vos connaissances.

Bonne continuation.

Cordialement.

Bonsoir de nouveau !

@JFL

Merci pour la proposition, surprenante de simplicité, pas encore tout saisi mais je vais creuser.

Attention toutefois, ma proposition retournera "0B" si le valeur initiale est égale à UNE lettre (B dans l'exemple).

Re,

Number.From (ou Number.FromText) retourne une valeur numérique.
Number.ToText retourne une valeur de texte (formatée) à partir d'une valeur numérique.
Try...otherwise fait office de SiErreur (version Excel).

Cdlt.

Re,

@Jean-Eric Ok, je le note dans mes tablettes.

@JFL Dans mon cas de figure, cela fonctionne.

Dans tous les cas, je garde précieusement ces propositions pour les employer à bon escient (je l'espère).

Cordialement.

Re,

Rechercher des sujets similaires à "power query sierreur"