Excel:获取行中第一个和最后一个非零单元格的位置

时间:2017-02-23 09:20:50

标签: excel vba excel-vba

下面屏幕截图中的第二行(我的工作表中的第4行)将总结每列上的值并将此总和除以某事。这些值总是会改变,我试图找到一种方法来从第一个非零值到最后一个非零值进行选择,这样我就可以使用该范围来创建图表。

enter image description here 我正在使用else =LOOKUP(2;1/(4:4<>0);4:4),它将返回第4行的最后一个非零值,但我不能使用MATCH我猜是因为我可能会发现其他值等于最后一个非零值,&#34 ;较早&#34;在该范围内,并且不会返回该特定的最后一个非零单元格的引用。

我已经尝试=MATCH(0;4:4;1)尝试找到第一个非零单元格,但由于某种原因,这将返回最后一个零单元格的位置。

有什么想法吗? VBA也是一种选择。

1 个答案:

答案 0 :(得分:0)

我能找到的东西:

第一个非零单元格地址:{=ADDRESS(4;MATCH(TRUE;4:4<>0;0))}

最后一个非零单元格地址:{=ADDRESS(4;MAX((4:4>0)*COLUMN(4:4)))}

我添加了{ }来指出公式应该使用CTRL + SHIFT + ENTER进行确认,因为它们是Array formulas

希望它会帮助别人!