假设我们有Content
列,其中包含表格。我想以所有表都从第一行获得标题的方式来转换该列的每个表。
let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WKsovVzBU0lFyVIrVgfCMUHjGKDwTFJ4pCs8MwosFAA==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type text) meta [Serialized.Text = true]) in type table [Column1 = _t, Column2 = _t]),
#"Grouped Rows" = Table.Group(Source, {"Column2"}, {{"Content", each _, type table}}),
#"Previous Step" = Table.SelectColumns(#"Grouped Rows",{"Content"}),
#"Added Custom" = Table.AddColumn(#"Previous Step", "New Content", each Table.PromoteHeaders([Content], [PromoteAllScalars=true]))
in
#"Added Custom"
如果您从此代码中选择Previous Step
,然后单击显示红色箭头的地方(在Table
文字的右侧,而不是上方),您可能会在其中看到以下内容:
但是我想在不添加新列的情况下得到我想要的,而是在最后一步通过转换 Content
列来获得。有可能吗?
请注意,我不想扩展表格。
答案 0 :(得分:2)
只需使用Table.TransformColumns代替Table.AddColumn
Table.TransformColumns(#"Previous Step", {{"Content", each Table.PromoteHeaders(_, [PromoteAllScalars=true])}})
制作转换列步骤的一种简单方法是执行类似操作,例如在“转换”选项卡上的列上添加文本操作,这将创建一个TransformColumns步骤,您可以对其进行编辑以执行所需的操作。