如何用特定数据填充新行?

如何用特定数据填充新行?

在 Microsoft Excel 中,我将用户和产品数据存储在工作表中。我可以在此工作表中添加/删除新用户或新产品。

我有另一张表,它必须将所有产品放入每个用户。我需要一个公式来将它们放入其中,如下例所示:每次我添加/删除用户或产品时。

例子:

样本

答案1

假设“USER 1”位于单元格 A2,将其放在 B2 中,然后向下拖动:

="PRODUCT "&COUNTIF($A$2:A2,A2)

想法:用移动 countif() 连接文本。

如果它有效/无效/可以理解,请分享。(:

================

经过评论和跟进,以下是修改后的解决方案。使用 OP 共享的示例文件,在输出表中,只需输入这些公式即可。

在单元格 A2 中:

=IF((ROW()-1)>((COUNTA(Input!B:B)-1)*(COUNTA(Input!A:A)-2)),"",INDEX(Input!A:A,1+ INT((ROW()-2)/(COUNTA(Input!B:B)-1))+2))

在单元格 B2 中:

=IF((ROW()-1)>((COUNTA(Input!B:B)-1)*(COUNTA(Input!A:A)-2)),"",INDEX(Input!B:B,COUNTIF($A$2:A2,A2)+2))

并向下拖动。

主意 :

  1. 计算输入表的 A 列和 B 列中有多少行不为空。

  2. 使用 row() 的数学运算和上述计数,将 A/B 列中的项目“加载”到输出表中

  3. 如果 row() 数超过(B 列中非空的行数)*(B 列中非空的行数),则停止输出

在公式中,它是...

  1. -->COUNTA(Input!B:B) & COUNTA(Input!A:A)

  2. --->INDEX(Input!B:B,COUNTIF($A$2:A2,A2)+2)

  3. --->IF((ROW()-1)>((COUNTA(Input!B:B)-1)*(COUNTA(Input!A:A)-2)),"", ... )

希望能帮助到你。 ( :

相关内容