Del via


Table.TransformColumnTypes

Syntaks

Table.TransformColumnTypes(
    table as table,
    typeTransformations as list,
    optional culture as nullable text
) as table

Omtrent

Returnerer en tabel ved at anvende transformationshandlinger på de angivne kolonner ved hjælp af en valgfri kultur.

  • table: Den inputtabel, der skal transformeres.
  • typeTransformations: De typetransformationer, der skal anvendes. Formatet for en enkelt transformation er { kolonnenavn, skriv værdi }. En liste over transformationer kan bruges til at ændre typerne af mere end én kolonne ad gangen. Hvis der ikke findes en kolonne, udløses der en fejl.
  • culture: (Valgfrit) Den kultur, der skal bruges til at transformere kolonnetyperne (f.eks. "en-US"). Hvis der er angivet en post for culture, kan den indeholde følgende felter:
    • Culture: Den kultur, der skal bruges til at transformere kolonnetyperne (f.eks. "en-US").
    • MissingField: Hvis der ikke findes en kolonne, udløses der en fejl, medmindre dette felt giver en alternativ funktionsmåde (f.eks MissingField.UseNull . eller MissingField.Ignore).

Typeværdien i parameteren typeTransformations kan være any, alle typerne number , text, alle typerne date, time, datetime, datetimezoneog duration , logicaleller binary. Typerne list, record, tableeller function er ikke gyldige for denne parameter.

For hver kolonne, der er angivet i typeTransformations, er ". From"-metoden, der svarer til den angivne typeværdi, bruges normalt til at udføre transformationen. Hvis der f.eks. angives en Currency.Type typeværdi for en kolonne, anvendes transformationsfunktionen Currency.From på hver værdi i den pågældende kolonne.

Eksempel 1

Transformér talværdierne i den første kolonne til tekstværdier.

brug

let
    Source = #table(type table [a = number, b = number],
    {
        {1, 2},
        {3, 4}
    }),
    #"Transform Column" = Table.TransformColumnTypes(
        Source,
        {"a", type text}
    )
in
    #"Transform Column"

output

#table(type table [a = text, b = number],
{
    {"1", 2},
    {"3", 4}
})

Eksempel 2

Transformér datoerne i tabellen til deres tilsvarende franske tekst.

brug

let
    Source = #table(type table [Company ID = text, Country = text, Date = date],
    {
        {"JS-464", "USA", #date(2024, 3, 24)},
        {"LT-331", "France", #date(2024, 10, 5)},
        {"XE-100", "USA", #date(2024, 5, 21)},
        {"RT-430", "Germany", #date(2024, 1,18)},
        {"LS-005", "France", #date(2023, 12, 31)},
        {"UW-220", "Germany", #date(2024, 2, 25)}
    }),
    #"Transform Column" = Table.TransformColumnTypes(
        Source,
        {"Date", type text},
        "fr-FR"
    )
in
    #"Transform Column"

output

#table(type table [Company ID = text, Country = text, Date = text],
{
    {"JS-464", "USA", "24/03/2024"},
    {"LT-331", "France", "05/10/2024"},
    {"XE-100", "USA", "21/05/2024"},
    {"RT-430", "Germany", "18/01/2024"},
    {"LS-005", "France", "31/12/2023"},
    {"UW-220", "Germany", "25/02/2024"}
})

Eksempel 3

Transformér datoerne i tabellen til de tilsvarende tyske tekstværdier og værdierne i tabellen til procenter.

brug

let
    Source = #table(type table [Date = date, Customer ID = text, Value = number],
    {
        {#date(2024, 3, 12), "134282", .24368},
        {#date(2024, 5, 30), "44343", .03556},
        {#date(2023, 12, 14), "22", .3834}
    }),
    #"Transform Columns" = Table.TransformColumnTypes(
        Source,
        {{"Date", type text}, {"Value", Percentage.Type}},
        "de-DE")
in
    #"Transform Columns"

output

#table(type table [Date = text, Customer ID = text, Value = Percentage.Type],
{
    {"12.03.2024", "134282", .24368},
    {"30.05.2024", "44343", .03556},
    {"14.12.2023", "22", .3834}
})

Eksempel 4

Anvend transformationer med en postværdi for culture.

brug

let
    Source = #table(type table [Company ID = text, Country = text, Date = date],
    {
        {"JS-464", "USA", #date(2024, 3, 24)},
        {"LT-331", "France", #date(2024, 10, 5)},
        {"XE-100", "USA", #date(2024, 5, 21)},
        {"RT-430", "Germany", #date(2024, 1,18)},
        {"LS-005", "France", #date(2023, 12, 31)},
        {"UW-220", "Germany", #date(2024, 2, 25)}
    }),
    #"Transform Column" = Table.TransformColumnTypes(
        Source,
        {{"Date", type text}, {"NewColumn", type number}},
        [Culture="fr-FR", MissingField=MissingField.UseNull]
    )
in
    #"Transform Column"

output

#table(type table [Company ID = text, Country = text, Date = text, NewColumn = number],
{
    {"JS-464", "USA", "24/03/2024", null},
    {"LT-331", "France", "05/10/2024", null},
    {"XE-100", "USA", "21/05/2024", null},
    {"RT-430", "Germany", "18/01/2024", null},
    {"LS-005", "France", "31/12/2023", null},
    {"UW-220", "Germany", "25/02/2024", null}
})