在 Excel 中每隔一个单元格自动填充

Posted

技术标签:

【中文标题】在 Excel 中每隔一个单元格自动填充【英文标题】:Autofill every second cell in Excel 【发布时间】:2015-08-26 15:47:32 【问题描述】:

我希望从其他每个单元格中自动填充单元格值。所以我有一列是我的源列,另一列是我试图自动填充的。所以在我的第二列中,我希望第一个单元格为 =A1,第二个单元格 =A3,第三个单元格 =A5,依此类推。我怎样才能轻松做到这一点?

【问题讨论】:

或者,要使用非易失性公式,请尝试 =INDEX(A:A,ROW()*2-1) 或者输入不带等号的前两个公式:A1 然后A3 然后选择这两个并自动填充以获得A5A7、...在列中查找并替换为A=A 【参考方案1】:

从上面的 cmets 中提取 3 个选项,有 3 种简单的方法可以做到这一点。前 2 个选项是 volatile 函数;这意味着每次更改工作簿中的任何单元格时它们都会自动计算(而不是仅在相关单元格更改时)。因此,它们的处理强度更高,只有当你有很多它们(比如说 10,000 个)时才重要。这些公式是:

=OFFSET(A$1,2*(ROW()-1),)

这从 A1 开始,向下移动公式在 *2 - 1 中的行数(即:如果公式在单元格 8 中,则向下移动 15 个单元格)。它采用当前列并给出 1x1 的范围(即:单个单元格)。请注意,由于 Offset 已经从 A1 开始,您还需要减去一个额外的行来说明要向下移动多少空间(按照@pnuts 的建议,将 -1 乘以 2 在此处完成)。

另外,INDIRECT 通过创建对特定范围(在本例中为单个单元格)的引用来工作,然后给出该单元格的值 - 如下所示:

=INDIRECT("A"&2*Row()-1)

要在没有易失公式的情况下执行此操作,您可以使用 INDEX。 INDEX 采用特定数组(在本例中为 A 列),并从该列的第 x 项返回值(在本例中为行 2* 当前行 - 1)。如下所示:

=INDEX(A:A,ROW()*2-1) 

【讨论】:

以上是关于在 Excel 中每隔一个单元格自动填充的主要内容,如果未能解决你的问题,请参考以下文章

使用自动填充 (Excel) 时保持单元格的颜色

excel - 自动填充递增多个数字

根据 Excel 中的另一个单元格自动填充单元格数据

将日期范围自动填充到excel单元格中

在 Excel VBA 中对一系列单元格使用自动填充

EXCEL单元格批量填充后如何自动批量添加时间批注?