Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Sözdizimi
Table.TransformColumns(
table as table,
transformOperations as list,
optional defaultTransformation as nullable function,
optional missingField as nullable number
) as table
Hakkında
Listedeki her sütun işlemini uygulayarak belirtilen tabloyu dönüştürür.
-
table: Dönüştürülecek tablo. -
transformOperations: Tabloya uygulanacak dönüşümler. Bu parametrenin biçimi { sütun adı, dönüştürme } veya { sütun adı, dönüştürme, yeni sütun türü } şeklindedir. -
defaultTransformation: (İsteğe bağlı) içindetransformOperationslistelenmeyen tüm sütunlara uygulanan varsayılan dönüştürme. -
missingField: (İsteğe bağlı) Eksik değerler için beklenen eylemi belirtir. içindetransformOperationslistelenen bir sütun yoksa, bu parametre bir alternatif belirtmediği sürece bir özel durum (MissingField.Error) oluşturulur. Aşağıdaki değerlerden birini kullanın:-
MissingField.UseNull: Eksik alanlarnulldeğeri olarak eklenir. -
MissingField.Ignore: Belirtilmemiş alanlar göz ardı edilir.
-
Örnek 1
[A] sütunundaki metin değerlerini sayı değerlerine, [B] sütunundaki sayı değerlerini de metin değerlerine dönüştürün.
Kullanım
Table.TransformColumns(
Table.FromRecords({
[A = "1", B = 2],
[A = "5", B = 10]
}),
{
{"A", Number.FromText},
{"B", Text.From}
}
)
Çıkış
Table.FromRecords({
[A = 1, B = "2"],
[A = 5, B = "10"]
})
Örnek 2
Eksik [X] sütunundaki sayı değerlerini metin değerlerine dönüştürün. Var olmayan sütunlarda varsayılan değer olarak null kullanın.
Kullanım
Table.TransformColumns(
Table.FromRecords({
[A = "1", B = 2],
[A = "5", B = 10]
}),
{"X", Number.FromText},
null,
MissingField.UseNull
)
Çıkış
Table.FromRecords({
[A = "1", B = 2, X = null],
[A = "5", B = 10, X = null]
})
Örnek 3
[B] sütunundaki sayı değerlerini artırıp metin değerlerine dönüştürün ve diğer tüm sütunları sayılara dönüştürün.
Kullanım
Table.TransformColumns(
Table.FromRecords({
[A = "1", B = 2],
[A = "5", B = 10]
}),
{"B", each Text.From(_ + 1), type text},
Number.FromText
)
Çıkış
Table.FromRecords({
[A = 1, B = "3"],
[A = 5, B = "11"]
})
Örnek 4
ABD tatilinde gerçekleşen zamanlanmış bakım görevlerini bir sonraki güne veya tatil cuma günüyse sonraki Pazartesi'ye taşıyın.
Kullanım
let
MaintenanceSchedule = #table(type table [Task = text, Date = date],
{
{"HVAC Check", #date(2025, 7, 10)}, // Not a holiday
{"Window Washing", #date(2025, 9, 1)}, // Labor Day
{"Fire Drill", #date(2025, 9, 17)}, // Not a holiday
{"Light Replacement", #date(2025, 11, 27)} // Thanksgiving
}),
USHolidays = {
#date(2025, 1, 1), // New Year's Day
#date(2025, 7, 4), // Independence Day
#date(2025, 9, 1), // Labor Day
#date(2025, 11, 27), // Thanksgiving
#date(2025, 12, 25) // Christmas
},
AdjustedSchedule = Table.TransformColumns(
MaintenanceSchedule,
{{"Date", each if List.Contains(USHolidays, _) then
if Date.DayOfWeek(_, Day.Sunday) = 5 then
Date.AddDays(_, 3) // Friday to Monday
else
Date.AddDays(_, 1) // Other to next day
else _, type date}}
)
in
AdjustedSchedule
Çıkış
#table(type table[Task = text, Date = date],
{
{"HVAC Check", #date(2025, 7, 10)},
{"Window Washing", #date(2025, 9, 2)},
{"Fire Drill", #date(2025, 9, 17)},
{"Light Replacement", #date(2025, 11, 28)}
})