我有一个脚本,它创建一个包含数据的工作表副本,查询新数据,然后使用查找(在本例中为 SUMIFS)将任何手动条目从旧工作表拉到新工作表上。我在将公式放到页面上的行(下面的最后一行)上收到一条应用程序定义/对象定义的错误消息。我尝试使用 .Cells 等直接添加公式,但它必须使用公式本身的语言,因为我可以以这种方式删除直接公式(例如.Range("N2:N" & LastRow) = "=M2*H2"
)
Dim CopySheet As String
Dim QSheet As String
Dim FormulaS As String
Dim LastRow As Integer
Dim CoreWB As Workbook
Set CoreWB = ActiveWorkbook
QSheet = "QData"
CopySheet = Format(Date, "mm-dd-yy")
With CoreWB
.Sheets.Add(After:=.Sheets("HistSum")).Name = CopySheet
.Sheets(QSheet).Cells.Copy _
Destination:=Sheets(CopySheet).Cells
End With
FormulaS = "=SUMIFS(" + CopySheet + "!M:M," + CopySheet + "!A:A, A:A," + CopySheet + "!C:C, C:C," + CopySheet + "!J:J, J:J," + CopySheet + ",!E:E, E:E)"
With Sheets(QSheet)
LastRow = .Range("A" & .Rows.Count).End(xlUp).Row
.Range("M2:M" & LastRow).Formula = FormulaS