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这不是一个有效的公式。
另外,你实例化了LastRow
variables,但是你在代码中使用了LastRow1
。
考虑:
Dim LastRow1 As Long LastRow1 = Sheets("Line A").Range("A1").End(xlDown).Row Sheets("Overview").Range("D2").Formula = "='Line A'! C" & LastRow1
编辑#1: