如何在不选择Excel图表工作表的情况下更改替代文本

时间:2014-02-28 05:09:52

标签: excel vba charts

我想在excel中更改图表工作表中的替代文字。

录制宏时,这是录制的代码。

Sheets("Chart1").select
ActiveChart.ChartArea.Select
ActiveSheet.Shapes("Chart 1").AlternativeText = "asdasd"

我想在不执行.select方法的情况下执行此操作。 这将允许我编辑隐藏的图表表而不取消隐藏它们。

这就是我对工作表中的图表做同样的事情

Set sht_Sheet = Application.ActiveWorkbook.Sheets(i_SheetCount)
For Each shp_Shape In sht_Sheet.Shapes
s_TitleText = shp_Shape.AlternativeText
next

注意我在这里编辑图表,而不是工作表中的图表

2 个答案:

答案 0 :(得分:0)

看起来工作表和图表都命名为Chart1?如果是这样,应该这样做:

表格(“Chart1”)。形状(“Chart1”)。AlternativeText =“asdasd”

答案 1 :(得分:0)

当然 - 他们绝对是一个集合。他们在哪个系列?这就是我遇到的问题,告诉我循环,它允许我循环遍历图表上的所有对象,而不必直接引用它们。类似的东西:

For each MySheet In Workbook.sheets
 For each MyShape In MySheet
   MyText = MyShape.AlternativeText
 Next
Next

除了上面的代码显然不起作用。