如何将数组公式复制到 Calc 的列中?

Posted

技术标签:

【中文标题】如何将数组公式复制到 Calc 的列中?【英文标题】:How do you copy an array formula down a column in Calc? 【发布时间】:2014-08-25 09:16:38 【问题描述】:

我在单元格B2 中有以下数组公式:

=INDEX($M$2:$O$110;MATCH(1;($M$2:$M$110=C2)*($N$2:$N$110=E2);0);3)

我想把它复制到一列,所以我想:

B2 =INDEX($M$2:$O$110;MATCH(1;($M$2:$M$110=C2)*($N$2:$N$110=E2);0);3) B3 =INDEX($M$2:$O$110;MATCH(1;($M$2:$M$110=C3)*($N$2:$N$110=E3);0);3) B4 =INDEX($M$2:$O$110;MATCH(1;($M$2:$M$110=C4)*($N$2:$N$110=E4);0);3)

我将公式输入B2,然后按CTRL+SHIFT+ENTER,然后将公式复制到B 列。这只会给我:

=INDEX($M$2:$O$110;MATCH(1;($M$2:$M$110=C2)*($N$2:$N$110=E2);0);3)

C2E2 的相对引用似乎被视为绝对引用。我希望 E2C2 改变。

我使用的是 OpenOffice Calc,所以函数中有 ; 而不是 ,

【问题讨论】:

您是否在单元格中输入B2,然后输入CTRL+SHIFT+ENTER,然后像普通公式一样向下拖动?因为这将在 Excel 中工作。听起来您更像是突出显示您想要的区域,然后粘贴单个值,这可能会为整个区域创建单个数组公式。你想要的是每个单元格中的一个单独的数组公式。 @Dan 它在 MS Excel 中工作,但 OP 使用 OpenOffice Calc - 在 Calc 中做同样的事情时它不起作用。 @Irina 您是否可以在粘贴公式后删除单个单元格,或者您是否收到无法更改数组的一部分的错误?如果你做得正确,你应该能够删除一行,因为每行都包含它自己的数组公式 【参考方案1】:

在 Calc(OpenOffice 或 LibreOffice)中,如果您使用填充句柄(右下角的小黑点)向下或横向填充数组公式,您将始终为整个上划线区域创建 一个 数组公式活动单元格的一角)。

如果您需要为每个单元格创建单个数组公式,则必须复制公式,然后选择目标单元格并粘贴公式。

如果在拖动填充处理程序时按住 Ctrl + Shift,您也可以复制而不是填充。

【讨论】:

以上是关于如何将数组公式复制到 Calc 的列中?的主要内容,如果未能解决你的问题,请参考以下文章

将矩阵中的列向量复制到opencv中另一个矩阵的每个列中

在熊猫的列中存储字符串值数组? [复制]

将excel中的相同公式复制到列中的每个单元格但只更改公式? [重复]

如何把Excel中选定的一列数据复制粘贴到另一列相同的列中,要用宏来自动复制粘贴。

将表的列复制到另一个表SQL

如何在熊猫数据框中的所有列中搜索模式,并在找到时将其复制到另一列