Excel 2号线怎么了?
我试图求一个长度不同的范围的和,从插入这个公式的上面两行开始Excel 2号线怎么了?,excel,vba,Excel,Vba,我试图求一个长度不同的范围的和,从插入这个公式的上面两行开始 当我尝试运行时,收到一条“编译错误:语法错误”消息。首先,您尝试在不告诉的情况下使用。End它的结尾是什么 ActiveCell.Offset(1, -1).Range("A1").Select ActiveCell.FormulaR1C1 = "=SUM(R[" & End(xlUp).Row & "]C:R[-2]C)" 其次,该公式几乎总是一个循环引用,因为您希望从活动单元格上方的两行(在同一列中)合计到同一列
当我尝试运行时,收到一条“编译错误:语法错误”消息。首先,您尝试在不告诉
的情况下使用。End
它的结尾是什么
ActiveCell.Offset(1, -1).Range("A1").Select
ActiveCell.FormulaR1C1 = "=SUM(R[" & End(xlUp).Row & "]C:R[-2]C)"
其次,该公式几乎总是一个循环引用,因为您希望从活动单元格上方的两行(在同一列中)合计到同一列中最后填充的行。这听起来像是包含了单元格本身,它是一个循环引用
若要从第二行(活动单元格列中)求和到活动单元格上方的两行,则这是合适的
With ActiveCell
.FormulaR1C1 = "=SUM(R[" & .Parent.Cells(Rows.Count, .Column).End(xlUp).Row & "]C:R[-2]C)"
End With
如果需要从第一行开始,那么公式将以“
”=SUM(R1C:R)”开始&…
我想,既然您正在设置ActiveCell
的值,并且在执行此操作时移动光标,那么最多只能得到不一致的结果。然而,这只是一个猜测,因为您没有告诉我们出了什么问题-这只是一种测试,看看“我们”是否知道我们在说什么吗?如果你遇到了一个特定的错误,请编辑你的帖子以包含它。这很有帮助,但似乎会将该列中的总行数添加到锚行数中。这意味着它正在创建一个大范围并在公式中引用它,而我想查找连续块并选择它作为一个范围。我nk最好是A)在尝试设置公式之前先识别行,然后使用这些特定值创建公式,B)破坏了整个目的;列中的顶部单元格的长度将与最后一个单元格的长度不同。Jeeped,我实际上想从列的顶部向下累加到活动单元格上方的两行。@Jeeped-谢谢!这在第一种情况下效果很好。然后我有两个空行和另一个连续的数据列,需要重复这个过程。问题是,上面的代码现在有一个对第二行的静态引用,而不是一个动态的CTRL+UP类型引用来选择下一个范围中的顶部单元格。同样的模式在大约10组中重复。思想?
With ActiveCell
if .row > 3 then
.FormulaR1C1 = "=SUM(R2C:R" & .row - 2 & "C)"
end if
End With