使用Range.End
从下面的示例中可以看到以下代码片段
mr = Range("L" & i - 1).End(xlUp).Row Cells(i, 12).Formula = "=SUM(L" & (i - 1) & ":L" & mr & ")"
大多数情况下都可以正常工作,除非有一条单独的线路可以总结出事情出错。
样本:第二个总数是177(48 + 129以上),而不是48,其余的都没问题。 在这里为了格式化而添加了这些行,该表只包含数字。
... 02/07/2014 50 4 ----------------------- 02/07/2014 129 = SUM(...) 06/07/2014 50 48 ----------------------- 02/07/2014 177 = SUM(...) 09/07/2014 60 8 09/07/2014 8 26 09/07/2014 8 26 09/07/2014 11 09/07/2014 1800 1 ----------------------- 09/07/2014 109 = SUM(...) 16/07/2014 60 8 16/07/2014 8 26 16/07/2014 11 48 16/07/2014 1800 1 ----------------------- 16/07/2014 83 = SUM(...)
我知道这个问题可以通过编程方式绕过,例如使用循环。 问题是,我在做什么Range.End
用法错误?
受到PatricK评论的启发,但修复了误报:
If mr - i = 3 And IsEmpty(Range("L" & i - 2)) Then mr = i - 1