使用 Excel 公式将相同文本添加到一列中的多个单元格

Add Same Text To Multiple Cells In One Column using Excel formula

我有一个 excel spreadsheet,其中包含两列示例数据

Name Quantity
Dell v1 12
HP v1 4

我创建了一个新的 sheet,想知道哪个公式允许我将文本值 'Dell v1' 添加到单个列中的 12 个单元格?我知道我可以复制和粘贴、向下拖动等......

Name
Dell v1
Dell v1
Dell v1
Dell v1
Dell v1
Dell v1
Dell v1
Dell v1
Dell v1
Dell v1

除非我误解了 objective,否则使用 Office 365,您可以:

=LET( series, A2:A3,
      by, B2:B3,
       elements, SUM( by ),  eSeq, SEQUENCE( elements,,0 ),
       bySeq, SEQUENCE( ROWS( by ) ),
       byPos, MMULT( --(bySeq >= TRANSPOSE( bySeq )), by ),
       INDEX( series, IFERROR(MATCH( eSeq, byPos, 1 )+1,1), 0 ) )

名称在 系列 中,数量在 by.

LAMBDA 助手

我刚刚意识到使用 LAMBDA 助手可以缩短它:

=LET( series, A2:A3,
      by, B2:B3,
       eSeq, SEQUENCE( SUM( by ),,0 ),
       byPos, SCAN(0,by,LAMBDA(a,b,a+b)),
       INDEX( series, IFERROR(MATCH( eSeq, byPos, 1 )+1,1), 0 ) )

根据我的评论,这对于 PowerQuery 来说似乎是一项不错的任务。从 table 加载数据,假设 table 的名称为 'table1',您可以将高级编辑器中的 M-code 更改为以下内容:

let
    Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
    Typed = Table.TransformColumnTypes(Source,{{"Name", type text}, {"Quantity", Int64.Type}}),
    Repeated = Table.TransformColumns(Typed, {"Quantity", each List.Numbers(_,_,0), type list}),
    Expanded = Table.ExpandListColumn(Repeated, "Quantity"),
    Finished = Table.RemoveColumns(Expanded,{"Quantity"})
in
    Finished

然后关闭 PowerQuery,它会将数据加载回 Excel。

使用辅助列使其变得相对容易,

• 在 A3 中输入数字 1

• 在A4 中输入公式=A3+C3 并向下复制

• 在E3中输入公式

=VLOOKUP(ROW(A1),$A:$B,2,TRUE)

并尽可能向下拖动。