2011-04-17 109 views
1

一些背景優先。訪問圖表的形狀ID - excel vba

  1. Excel允許的形狀重名。也就是說,您可以在同一個工作表中使用完全相同的名稱同時具有ChartObject和橢圓形狀。您也可以有兩個圖表同時命名爲「圖表2」。如果您嘗試引用具有重複名稱的形狀,例如

    ActiveSheet.Shapes( 「杜佩」)。選擇,

    Excel中似乎訴諸於用最低的ID(和重複名稱)返回的對象。

  2. 有沒有辦法(我知道)鏈接一個ActiveChart與其相應的包含形狀。

我想創建一個功能類似

功能GetAChartsShape(C爲圖表)爲形狀

,但我不知道怎麼辦。直接使用這將是格式化所選圖表(因爲無法全局更改圖表字體)。當然,這也可以有其他用途。

回答

1

含有嵌入圖表(形狀也是chartobject)的形狀的名稱是:

activechart.parent.name

或如果c聲明的圖表:

℃。 parent.name

但是,當然,你知道你不需要選擇對象進行這項工作,所以只是你需要在

c.paren做什麼t

它避免了重名的問題。

+0

我不知道ChartObject是形狀。謝謝! – 2011-04-24 00:49:10

+0

我想這可能不是很真實,請參閱我的答案和鏈接。 – 2015-02-19 19:57:25