【发布时间】:2017-08-25 14:12:17
【问题描述】:
我正在尝试使用 vb 在 Excel 中创建一个滚动的十二个月总和。包含数据的最后一列是动态的,因此我创建了一个变量来每次存储该列号。然后我尝试创建一个循环,输出前 12 个单元格的总和并移动到下一个单元格,直到达到 12 个计算单元格。但这不起作用......有什么明显的我做错了吗?谢谢!
Sub OSR_ReportComplete()
Dim lCol As Long
Dim p As Integer
lCol = Cells(7, Columns.Count).End(xlToLeft).Column
For p = 0 To 12
Range(Cells(15, lCol - p)).Value = Application.Sum(Range(Cells(7, lCol -
p), Cells(7, lCol - p - 12)))
Next p
End Sub
【问题讨论】:
-
可能不是这里的问题,但是在使用范围时您应该始终指定工作表...
-
不工作,不是对问题的良好描述。你得到什么错误或者它不应该做什么?
-
我只发布了我为完成滚动总和而添加的代码的 sn-p。此代码在一个循环中,循环通过工作表并执行多个任务。其余代码工作正常,但是当我添加我发布的代码时,它并没有做任何不同的事情。我本来希望第 15 行中的一组单元格有总和,但我什么也没得到。
-
执行这部分代码时的ActiveSheet是什么?这就是为什么您应该始终指定工作表的原因。
-
On Error Resume Next应该很少使用。并且应该在不久之后跟进On Error Goto 0以重置错误处理,否则您会错过代码失败的原因。