2014-11-04 17 views
0

這只是代碼的一部分。如何在vba中創建圖表後立即添加圖表名稱?

For i = 1 To Total_Graphs 
    Sheet3.Select 
    Num_Variables = Sheet2.Range("Num_Variables").Offset(i - 1, 0).Value 
    ActiveSheet.Shapes.AddChart.Select 
    ActiveChart.ChartType = xlLine 
    ActiveChart.SetSourceData Source:=Sheet1.Range(Total_Variable_Range(i)) 
    For j = 1 To Num_Variables 
    ActiveChart.SeriesCollection(j).Name = Sheet2.Range("List_format").Offset(i - 1, j - 1).Value 
    Next j 
Next i 

現在,我想命名自己創建的圖表,而不是自動給出名稱的excel。

+0

另外,任何人都可以用代碼的正常結構幫助。謝謝 – Shashank 2014-11-04 10:14:18

+0

我試過了。獲取運行時錯誤'-2147024882(8007000e)' – Shashank 2014-11-04 10:17:50

+0

hm .. shapes(index).Name =「new name」? – 2014-11-04 10:19:31

回答

0

對於命名時,AddChart方法返回Shape,所以你可以設置一個變量這一點,並使用它......

Dim s As Shape 
Set s = ActiveSheet.Shapes.AddChart 
s.Select 
s.Name = "some name" 
+0

[避免使用select](http://stackoverflow.com/questions/10714251/how-to-avoid-using-select-in-excel-vba-macros)...所以可能'ws.Shapes(ws.Shapes .Count).Name =「新名稱」' – 2014-11-04 12:09:52

相關問題