我寫的VBA代碼在圖形命名系列:如何使用vba查找系列名稱?
ActiveChart.SeriesCollection(1).name = "SPEC"
ActiveChart.SeriesCollection(2).name = "manju"
我的問題是,我想使用VBA代碼,以查找特定的系列名。 在上面的代碼中我有兩個系列。 現在我想通過使用vba代碼找到系列名稱(manju)。
我寫的VBA代碼在圖形命名系列:如何使用vba查找系列名稱?
ActiveChart.SeriesCollection(1).name = "SPEC"
ActiveChart.SeriesCollection(2).name = "manju"
我的問題是,我想使用VBA代碼,以查找特定的系列名。 在上面的代碼中我有兩個系列。 現在我想通過使用vba代碼找到系列名稱(manju)。
要通過傳遞名字,你可以訪問SeriesCollection()
:
MsgBox ActiveChart.SeriesCollection("manju").Name
這是可能的,因爲index
在SeriesCollection(index)
實際上Variant
類型是爲了讓編譯器的工作原理,如果你傳遞一個String
類型和試圖訪問它的名稱或如果您通過Long/Integer
(或任何其他數字數據類型)來訪問該枚舉器。
或迭代的SeriesCollection,比較反對 「饅頭」 當前名稱:
For i = 1 to ActiveChart.SeriesCollection.Count
If ActiveChart.SeriesCollection(i).name = "manju" Then
MsgBox "Found it!"
Exit for
End if
Next
林恩,這是否意味着你不能訪問該系列的名稱? – rrs
@rrs更正 - 既不是'.Item()'方法也不是索引器支持一個字符串......只是一個索引號。 –
對於Office 2007(我沒有檢查過早期版本),您絕對可以通過它的名稱訪問'SeriesCollection'。即'ActiveChart.SeriesCollection(「manju」)''。請參閱這裏指出它的Office 2010文檔:http://msdn.microsoft.com/en-us/library/office/ff836171%28v=office.14%29.aspx – CuberChase
沒有任何理由爲什麼'MSGBOX(ActiveChart.SeriesCollection(2)。名稱)'不會工作? –
@lynn crumbling謝謝 –
@LynnCrumbling我想搜索所有的系列,因爲每次它會在不同的位置 –