VBA,无法在公式中使用dynamic拉斯特罗参考

我正在使用下面的代码,并得到我的公式对象错误。 通过Googlesearch并查看了几个不同的链接,我找不到在公式中使用“最后一行”的适当方法。

Sub Auto_populate() Dim LastRow1 As Integer LastRow1 = Sheets("Line A").Range("A1").End(xlDown).Row Sheets("Overview").Range("D2").Formula = "='Line A'! C & LastRow1" Application.OnTime Now + TimeValue("00:01:00"), "Auto_Populate" End Sub 

我不确定如何让我的公式允许我使用另一个工作表的参考单元格。 任何帮助得到这个function的预期,将不胜感激!

背景:我正在为其他人创build一个概览表(一个仪表板)。 他们有几个人做每周审计,并希望更容易跟踪发生的事情。 每个审计项目都有自己的表格(每个表格由一个人负责)。 我将在后面添加其他代码,但是我的第一个障碍是确保我可以引用特定列中的最后一行。 这是我的第一个通过,所以如何完成手头的任务可能会有更好的select。 请让我知道,如果你能想到另一个。 我被引导到一个error handling程序,虽然我没有足够的阅读,以评估是否符合我的需要。

其他信息:

26页(在代码中使用“Line”,例如Line A)带有1个概览。

我将这个autopopulate(使用application.ontime和workbook_open)。 我还将添加一个脚本,用于在总览上对字体进行颜色格式化,以指示当前星期是否执行审计。

Sheets("Overview").Range("D2").Formula = "='Line A'! C & LastRow1"

应该是: Sheets("Overview").Range("D2").Formula = "='Line A'!C" & LastRow1

如果你看单元格的公式,你会看到:='A线'! C&LastRow1这不是一个有效的公式。

另外,你实例化了LastRowvariables,但是你在代码中使用了LastRow1

考虑:

 Dim LastRow1 As Long LastRow1 = Sheets("Line A").Range("A1").End(xlDown).Row Sheets("Overview").Range("D2").Formula = "='Line A'! C" & LastRow1 

编辑#1:

在这里输入图像说明