Excel VBA:总和图表范围

macros下面工作正常,但我想范围F23范围D2的和数。

Sub Macro1() ActiveSheet.ChartObjects("Graph").Activate ActiveChart.SetSourceData Source:=Range("Sheet1!$E$13:$F$23") End Sub 

所以如果在单元格D2中是87号,那么$ F $ 23就是$ F $ 110。 总是在D2中总结23。

尝试这个:

 Source:=Range("Sheet1!$E$13:$F$" & (23 + Range("D2").Value)) 

您只需修改范围string“Sheet1!$ E $ 13:$ F $ 23”。 你可以尝试:

 Sub Macro1() ActiveSheet.ChartObjects("Graph").Activate Dim valD2 As Integer valD2 = CInt(Sheets("Sheet1").Range("D2").Value) Dim rangeStr As String rangeStr = "Sheet1!$E$13:$F$" & CStr(valD2 + 23) ActiveChart.SetSourceData Source:=Range(rangeStr) End Sub 

您可以使用:

 Source:=Range("Sheet1!$E$13:$F$13").Resize(10 + Range("D2").Value)