Excel VBA:无法在范围()上求和()

Excel VBA:无法在范围()上求和(),excel,vba,Excel,Vba,我应该如何修复此代码,因为它抛出:“对象不支持此属性或方法” 当调整为以下值时,上述代码工作正常: Sub macro2() Workbooks("OUTPUT.xls").Sheets("Sheet1").Activate ActiveSheet.Range("B4") = _ Workbooks("INPUT.xlsx").Sheets("Sheet1").Range("D40") End Sub 但是,这不是一个可接受的解决方案,因为我希望按macro1()中所述

我应该如何修复此代码,因为它抛出:“对象不支持此属性或方法”

当调整为以下值时,上述代码工作正常:

Sub macro2()
    Workbooks("OUTPUT.xls").Sheets("Sheet1").Activate
    ActiveSheet.Range("B4") = _
    Workbooks("INPUT.xlsx").Sheets("Sheet1").Range("D40")
End Sub
但是,这不是一个可接受的解决方案,因为我希望按macro1()中所述的范围()求和()

ActiveSheet.Range("B4").Formula = Application.WorksheetFunction.Sum(Range("D40:D50"))
没有求和函数,请尝试改用:

ActiveSheet.Range("B4").Formula = Application.WorksheetFunction.Sum(Range("D40:D50"))
Sub macro1() 
    Workbooks("OUTPUT.xls").Sheets("Sheet1").Activate
    ActiveSheet.Range("B4") = _
        Application.WorksheetFunction.Sum(Workbooks("INPUT.xlsx").Sheets("Sheet1").Range("D40:D50"))
End Sub