我在將變數i傳遞到選擇圖表源值的回圈中時遇到問題。
Sub Macro()
For i = 2 To 10
Windows("Book1").Activate
ActiveSheet.ChartObjects("Chart 1").Activate
ActiveChart.SetSourceData Source:=Range("Sheet1!$A$1:$F$1,Sheet1!$A$2:$F$2" _
)
Next i
End Sub
我想更改系列值 Sheet1!$A$ 2 :$F$ 2 " 并將i值放在那里 -> Sheet1!$A$ i :$F$ i "
我嘗試了不同的方法,但它們不起作用
如何在 VBA 中回圈范圍?
Excel vba Charting,編輯范圍
ActiveChart.SetSourceData Source:=Range("Sheet1!$A$1:$F$1,("Sheet1!$A$" & i & ":$F$" & i)" _
uj5u.com熱心網友回復:
好的,我找到了解決我的問題的方法,即選擇不同的值范圍。下面的代碼有效:
For i = 2 To 10
newName = "=Sheet1!$A$" CStr(i)
newValues = "=Sheet1!$B$" CStr(i) ":$F$" CStr(i)
ActiveChart.FullSeriesCollection(1).Name = newName
ActiveChart.FullSeriesCollection(1).Values = newValues
Next i
uj5u.com熱心網友回復:
你有一些不需要的報價:
ActiveChart.SetSourceData Source:=Range("Sheet1!$A$1:$F$1,Sheet1!$A$" & i & ":$F$" & i)
uj5u.com熱心網友回復:
不要記得將i分配給 str 值
ActiveChart.SetSourceData Source:=Range("Sheet1!$A$1:$F$1,Sheet1!$A$" cstr(i) ":$F$" cstr(i)
更好的方法是創建變數
distinctrange = "Sheet1!$A$1:$F$1,Sheet1!$A$" cstr(i) ":$F$" cstr(i)
ActiveChart.SetSourceData Source:=Range(distinctrange)
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/438489.html
上一篇:有條件的函式陣列
