[英]Select data range for a chart from different sheet using VBA (EXCEL)
假設"chart_sheet"
是Chart
的名稱, "data_sheet"
是您的Worksheet
的名稱,我想您要執行以下操作:
Charts("chart_sheet").SetSourceData Source:=Worksheets("data_sheet").Range("A1:A20")
你With
塊沒有做什么有用的東西-的目的With
塊,讓您只需鍵入.
作為Worksheets("data_sheet").
類的快捷方式Worksheets("data_sheet").
。
所以像這樣:
With Sheets("chart_sheet")
.SetSourceData Source:=Worksheets("data_sheet").Range("A1:A20")
End With
可以使用,因為.SetSourceData
是Sheets("chart_sheet").SetSourceData
的縮寫。 (還要注意, Sheets
集合同時包含Worksheets
和Charts
對象,因此Charts("chart_sheet")
和Sheets("chart_sheet")
都指向同一對象。)
ActiveChart
引用當前活動的圖表,就像ActiveSheet
返回到當前工作表一樣。 如果執行該段代碼時沒有活動的圖表,則會出現錯誤。
因此以下代碼也可能為您工作:
Sheets("chart_sheet").Activate
ActiveChart.SetSourceData Source:=Worksheets("data_sheet").Range("A1:A20")
由於chart_sheet可能不是工作表,您嘗試過嗎?
with sheets("chart_sheet")
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.