【发布时间】:2020-01-12 09:49:44
【问题描述】:
我尝试使用此代码,因为我需要从第二张工作表到工作簿中的可用工作表求和
Result = Application.WorksheetFunction.Sum(Worksheets("Second SHEET:FINAL SHEET").Range("C3"))
【问题讨论】:
标签: excel vba sum worksheet-function
我尝试使用此代码,因为我需要从第二张工作表到工作簿中的可用工作表求和
Result = Application.WorksheetFunction.Sum(Worksheets("Second SHEET:FINAL SHEET").Range("C3"))
【问题讨论】:
标签: excel vba sum worksheet-function
我认为你所追求的是Application.Evaluate 方法。这使您可以模拟如下计算:
=SUM('Second Sheet:Final Sheet'!C3)
要返回第二个和最后一个工作表,我们可以使用WorkSheets 集合查看不同的索引,并构建一个有效的字符串以在Evalate 中使用:
Sub Test()
With ThisWorkbook
Dim Nom2d As String: Nom2d = .Worksheets(2).Name
Dim NomLw As String: NomLw = .Worksheets(.Worksheets.Count).Name
End With
Dim result As Double: result = Evaluate("SUM('" & Nom2d & ":" & NomLw & "'!C3)")
End Sub
如果您没有调整 WorkSheets 他们的索引,这应该可以解决问题。
编辑:如果您的工作表实际上被称为Second SHEET 和FINAL SHEET,那就简单一点:
Dim result As Double: result = Evaluate("SUM('Second SHEET:FINAL SHEET'!C3)")
【讨论】: