View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.misc
Barb Reinhardt Barb Reinhardt is offline
external usenet poster
 
Posts: 3,355
Default Macro to change chart name only once

How about something like this

Sub Test()
Dim aWS As Worksheet
Dim ChtObj As ChartObject

Set aWS = ActiveSheet

For Each ChtObj In aWS.ChartObjects
Debug.Print ChtObj.Name, ChtObj.Chart.Axes(xlValue).MinimumScaleIsAuto
ChtObj.Chart.Axes(xlValue).MinimumScaleIsAuto = False
Debug.Print ChtObj.Name, ChtObj.Chart.Axes(xlValue).MinimumScaleIsAuto

Next ChtObj

End Sub

Here, I don't believe you'd need to change the chart name either.

Notice that I didn't use SELECT once in this code.
--
HTH,
Barb Reinhardt



"Aligi" wrote:

I have a sheet with 3 charts, two of them are called "Chart 2" and I need to
perform via macro a change on the axis.

If I do not rename one of them the macro performs only once. If I rename it
does it fine, but if I run the macro twice it get stuck.

That is what I did so far:


ActiveSheet.ChartObjects("Chart 2").Activate
ActiveSheet.ChartObjects("Chart 2").Name = "Chart 1"
ActiveChart.Axes(xlValue).Select
ActiveChart.Axes(xlValue).MinimumScaleIsAuto = True
ActiveSheet.ChartObjects("Chart 2").Activate
ActiveChart.Axes(xlValue).Select
ActiveChart.Axes(xlValue).MinimumScaleIsAuto = True
ActiveSheet.ChartObjects("Chart 3").Activate
ActiveChart.Axes(xlValue).Select
ActiveChart.Axes(xlValue).MinimumScaleIsAuto = True

Please help!

--
Aligi