DATEDIF in PQ
05.11.2024 08:19:07
Christian
ich versuche irgendwie die beiden Formeln =DATEDIF(G2;D2;"Y") und =DATEDIF(G2;D2;"YD") in Powerquery umzusetzen,
versuche es hiermit, aber die Ergebnisse stimmen vorne und hinten nicht mit den Formelergebnissen überein, vor allem bei der zweiten Formel
hat da jemand eine funktionierende Idee?
let
Quelle = Excel.CurrentWorkbook(){[Name="einzeln"]}[Content],
#"Geänderter Typ" = Table.TransformColumnTypes(Quelle,{{"Spalte1", type text}, {"Spalte2", type text}, {"Spalte3", type date}, {"Spalte4", type text}, {"Spalte5", type text}, {"Spalte6", type date}, {"Spalte7", type date}, {"Spalte8", Int64.Type}}),
#"Entfernte Spalten" = Table.RemoveColumns(#"Geänderter Typ",{"Spalte7"}),
#"Gefilterte Zeilen" = Table.SelectRows(#"Entfernte Spalten", each [Spalte8] = 30),
// Hinzufügen der Jahre Differenz
#"Jahre Unterschied Hinzugefügt" = Table.AddColumn(#"Gefilterte Zeilen", "Jahre Unterschied", each
let
geburtsdatum = [Spalte6], // entspricht G2
berechnungPer = [Spalte3] // entspricht D2
in
if geburtsdatum = null or berechnungPer = null then null else
Date.Year(berechnungPer) - Date.Year(geburtsdatum) -
(if Date.Month(berechnungPer) Date.Month(geburtsdatum) or
(Date.Month(berechnungPer) = Date.Month(geburtsdatum) and Date.Day(berechnungPer) Date.Day(geburtsdatum))
then 1 else 0), Int64.Type
),
// Hinzufügen der verbleibenden Tage nach vollen Jahren
#"Fehlende Tage Hinzugefügt" = Table.AddColumn(#"Jahre Unterschied Hinzugefügt", "Fehlende Tage", each
let
geburtsdatum = [Spalte6], // entspricht G2
berechnungPer = [Spalte3] // entspricht D2
in
if geburtsdatum = null or berechnungPer = null then null else
let
totalDays = Duration.Days(berechnungPer - geburtsdatum),
jahre = Date.Year(berechnungPer) - Date.Year(geburtsdatum) -
(if Date.Month(berechnungPer) Date.Month(geburtsdatum) or
(Date.Month(berechnungPer) = Date.Month(geburtsdatum) and Date.Day(berechnungPer) Date.Day(geburtsdatum))
then 1 else 0)
in
totalDays - (jahre * 365), Int64.Type
)
in
#"Fehlende Tage Hinzugefügt"
Anzeige