Well, one can always put the ActiveX control on the sheet, position it
so that it appears on top of the chart, and then group the two
together. However, in this case, you will need to access the chart
through a somewhat more complex method. The foll. works for a
commandbutton:
Option Explicit
Private Sub CommandButton1_Click()
With Me.Shapes(1).GroupItems(1).OLEFormat.Object.Chart
.HasTitle = True
.ChartTitle.Text = Format(Now(), "hh:mm:ss")
End With
End Sub
How did I figure out the heirarchy? By stepping through the object
model as below. Hint: start at the bottom and work your way up.
?typename(me.shapes(1).GroupItems(1).OLEFormat.Object.chart)
Chart
?typename(me.shapes(1).GroupItems(1).OLEFormat.Object)
ChartObject
?typename(me.shapes(1).GroupItems(1).OLEFormat)
OLEFormat
?typename(me.shapes(1).GroupItems(1))
Shape
?me.Shapes(1).GroupItems.Count
2
?me.shapes.count
1
--
Regards,
Tushar Mehta
www.tushar-mehta.com
Excel, PowerPoint, and VBA add-ins, tutorials
Custom MS Office productivity solutions