Excel VBA:不能通过范围()的Sum()
我应该如何解决这个代码,因为它抛出:“该对象不支持此属性或方法”
Sub macro1() Workbooks("OUTPUT.xls").Sheets("Sheet1").Activate ActiveSheet.Range("B4") = _ Workbooks("INPUT.xlsx").Sheets("Sheet1").Sum(Range("D40:D50")) End Sub
上面的代码工作正常时调整为:
Sub macro2() Workbooks("OUTPUT.xls").Sheets("Sheet1").Activate ActiveSheet.Range("B4") = _ Workbooks("INPUT.xlsx").Sheets("Sheet1").Range("D40") End Sub
然而,这是不可接受的解决scheme,因为我想Sum()超过范围()如在macro1()中所述。
WorkSheet没有求和函数,请尝试使用WorksheetFunction :
Sub macro1() Workbooks("OUTPUT.xls").Sheets("Sheet1").Activate ActiveSheet.Range("B4") = _ Application.WorksheetFunction.Sum(Workbooks("INPUT.xlsx").Sheets("Sheet1").Range("D40:D50")) End Sub
尝试
ActiveSheet.Range("B4").Formula = Application.WorksheetFunction.Sum(Range("D40:D50"))