Power Query:如何使用基于A4的左(右)函数插入列

Power Query: How to insert a Column using the Left(Right Function based on A4

有没有办法通过引用特定单元格中的数据在 Power Query 中添加列?

我想从 "A4" 中获取文本,使用 Left(Right function,并将其添加到新列中。

我的 VBA 宏是: “最近 4 周 - 结束” & Left(Right(.Range("A4"), 24), 23)

我猜你想做那样的事情。在第一步中,您为 A4 定义了一个命名范围,我将其命名为 cellA4。然后我加载到 Powerquery 中,添加了一个额外的列,其中包含来自单元格的文本部分(我使用 Text.Middle 当然,其他文本函数也是可能的),并向下钻取到单元格的内容。 M-code 是

let
    Source = Excel.CurrentWorkbook(){[Name="cellA4"]}[Content],
    #"Added Custom" = Table.AddColumn(Source, "Custom", each Text.Middle([Column1],23)),
    #"Removed Columns" = Table.RemoveColumns(#"Added Custom",{"Column1"}),
    Custom = #"Removed Columns"{0}[Custom]
in
    Custom

结果看起来像

他们我只是用一列制作了一个 table 并将其导入 Powerquery 并添加了一个额外的列,其中仅包含单元格 A4 中的文本。 M-Code 是

let
    Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"Col1", type text}}),
    #"Added Custom" = Table.AddColumn(#"Changed Type", "Custom", each cellA4)
in
    #"Added Custom"

结果是

通过进一步研究,我发现通过添加空白查询,我可以通过引用特定单元格中的数据在 Power Query 中添加一列?

插入空白查询 高级编辑

(YourWorkSheet as table ) as text=>
let

    SheetCellA4 =YourWorkSheet[Column1]{3},
    SplitByFrom = Text.Split(SheetCellA4, "to "){1},
    SplitByTime = Text.Split(SplitByFrom, "`"){0} 
in SplitByTime

导入工作表数据 Source行后

#"Added Custom" = Table.AddColumn(Source, "Custom", each Query1(Source))
In
#"Added Custom"