我正在尝试创建一个总结一列值的查询,并将总和作为新行放在同一个表中。我知道我可以使用组功能执行此操作,但它不能完全按照我的需要执行此操作。我正在尝试创建会计日记帐分录,我需要计算一长串借记的抵消。我知道这是会计师的谈话。这是我正在使用的表的示例。
Date GL Num GL Name Location Amount
1/31 8000 Payroll Office 7000.00
1/31 8000 Payroll Remote 1750.00
1/31 8000 Payroll City 1800.00
1/31 8010 Taxes Office 600.00
1/31 8010 Taxes Remote 225.00
1/31 8010 Taxes City 240.00
1/31 3000 Accrual All (This needs to be the negative sum of all other rows)
我一直在使用Group By函数和按日期分组,结果是Amount的总和但是除去了之前的行和除Date之外的四列。我需要保留所有行和列,如果可能的话,将总和放在相同的Amount列中。如果总和必须在新列中,只要其他列和行保留,我就可以使用它。我还需要为此总和行输入GL Num,GL Name和Location值。这三个值不会改变。他们总是3000,Accrual,All。日期将根据实际数据中使用的日期而变化。如果可能的话,我更愿意在Power Query(Get& Transform)中完成所有这些操作。我可以通过VBA来做到这一点,但我正试图让其他人无需使用。
答案 0 :(得分:3)
您可以做什么在单独的查询中计算应计行,然后追加它们。
Date
分组并总结Amount
。这应该返回以下内容:Date Amount
1/31 11615
Amount
列乘以-1。 (转换>标准>乘法)GL Num
,GL Name
和Location
添加自定义列。Date Amount GL Num GL Name Location
1/31 11615 3000 Accrual All
您还可以将这一切全部转换为单个查询,如下所示:
let
Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
OriginalTable = Table.TransformColumnTypes(Source,{{"Date", type date}, {"GL Num", Int64.Type}, {"GL Name", type text}, {"Location", type text}, {"Amount", Int64.Type}}),
#"Grouped Rows" = Table.Group(OriginalTable, {"Date"}, {{"Amount", each List.Sum([Amount]), type number}}),
#"Multiplied Column" = Table.TransformColumns(#"Grouped Rows", {{"Amount", each _ * -1, type number}}),
#"Added Custom" = Table.AddColumn(#"Multiplied Column", "GL Num", each 3000),
#"Added Custom1" = Table.AddColumn(#"Added Custom", "GL Name", each "Accrual"),
#"Added Custom2" = Table.AddColumn(#"Added Custom1", "Location", each "All"),
#"Appended Query" = Table.Combine({OriginalTable, #"Added Custom2"})
in
#"Appended Query"
请注意,我们在查询的前一步中添加了最后一步,而不是引用其他查询。