按连续零分割列

时间:2016-10-06 07:37:42

标签: excel excel-vba excel-formula vba

我是excel的新手,我正在努力做一些非常简单的事情。我有一列未分类的数字。我想将列中连续行中最后两个零之上的所有数字设置为零(并且还将另一列中的所有数字设置为前两个连续零之下的所有数字为零)。

例如,我突出显示了A列中最后两个连续零点之上的所有单元格。我想要一个方法(VBA或公式),将这些单元格设置为零并在B列中创建输出。

enter image description here

有人能帮忙吗?

1 个答案:

答案 0 :(得分:2)

有多种方法可以做到这一点,但我倾向于使用辅助单元格(比如D1)计算出该行和下一行包含一对零的最后一行: -

=MAX(IF((A1:A19+A2:A20)=0,ROW(A1:A19)))

(这是一个数组公式,必须输入 Ctrl Shift Enter

然后在B1中输入以下公式:

=IF(ROW()<$D$1,0,A1)

enter image description here

如果您有负数和正数,这在D1中会更好: -

=MAX(IF((A1:A19=0)*(A2:A20=0),ROW(A1:A19)))