Excel公式从一个引用创建两个条目

Excel公式从一个引用创建两个条目

我的所有数据都在 Excel 的 A 列中,我想使用公式填充 B 列。请参阅附图:

示例图片

如果我使用带有参考单元格的“&_x1”和“&_x2”,它可以工作,但在这种情况下的限制是,我无法将其向下拖动以在 B 列的以下单元格中应用相同的公式。我必须通过转到 B 列中的每一行来手动调整参考单元格。

我可以使用其他方法吗?我的目标是,在 Row1-ColumnB 中添加公式后,如果我将角向下拖动,它应该会填充 B 列的所有行。我不需要调整 B 列中任何其他单元格中的公式。最终的表格应该看起来与您在附图中看到的完全一样。

答案1

以下公式将创建您需要的列。

您的描述清楚地表明您正在填充正式表格,因此我以不使用功能的方式进行了填充,SPILL因为这在表格中不起作用。

=INDIRECT("A" & ROUNDUP(ROW()/2, 0)) & "_x" & IF(MOD(ROW(),2)=1, 1, 2)

源单元格寻址是通过使用INDIRECT()您根据列字母和公式创建的字符串来执行的。该公式取行号并除以 2,然后向上舍入。除以 2 可得到每个输入的对。如果每组需要 5 个项目,则除以 5,等等。

“_x1”和“_x2”中所需的“1”或“2”值是通过另一个算术运算获得的,这次MOD()使用 2 作为除数,因此得到 1(奇数行)或 0(偶数行)。IF()测试哪个是 1 或 2,并给出构建该部分字符串的正确 1 或 2。

(如果您没有使用表格但想要功能,您可以使用而不是生成要除的数字来做SPILL同样的事情,或者更棘手的是,您可以使用它直接生成行值。)SEQUENCE()ROW()

答案2

你可以尝试这个:

在此处输入图片描述

  • 单元格 B42 中的数组(CSE)公式:

    {=INDEX($A$42:$A$45, MATCH(FALSE, COUNTIF($B$41:B41, $A$42:$A$45)=2, 0))}

  • 完成配方Ctrl+Shift+Enter,并向下填充直至需要为止。

  • 2帮助单元格中的公式B42重复值A42:A45,并且可编辑。

  • 单元格 C42 中的公式: =IF(COUNTIF(B$42:$B42,$B42)=1,B42&"_x1",IF(COUNTIF(B$42:$B42,$B42)=2,B42&"_x2",""))

  • 或者你也可以使用这个: =IF(COUNTIF(B$42:$B42,$B42)=1,B42&"_x1",B42&"_x2")

注意:

  • 根据需要调整公式中的单元格引用。
  • 为了整洁起见,您可以隐藏帮助栏。

相关内容