Macro to change X-axis scale has errors

C

Cinco

I've read and studied code from a number of posts on this subject but my
"newbie" macro code has errors. I have the minimumscale value and
maximumscale value (entered by the user) stored in Sheet1 at $E$2 and $F$2.
My chart is in Sheet2. This is my complete macro:

Sub ChangeXAxisScale()
'
' ChangeXAxisScale Macro
'
With Worksheets("Sheet2")
With ActiveChart.Axes(1, 1)

.MinimumScale = Range("$E$2").Value
.MaximumScale = Range("$F$2").Value

End With
End With

End Sub

I know I am missing something(s) very basic and would appreciate your help.
Thanks.

I just bought the "Excel 2007 Macros Made Easy" book and am working my way
through it, although rather slowly.

Jim
 
C

Cinco

Cinco said:
I've read and studied code from a number of posts on this subject but my
"newbie" macro code has errors. I have the minimumscale value and
maximumscale value (entered by the user) stored in Sheet1 at $E$2 and $F$2.
My chart is in Sheet2. This is my complete macro:

Sub ChangeXAxisScale()
'
' ChangeXAxisScale Macro
'
With Worksheets("Sheet2")
With ActiveChart.Axes(1, 1)

.MinimumScale = Range("$E$2").Value
.MaximumScale = Range("$F$2").Value

End With
End With

End Sub

I know I am missing something(s) very basic and would appreciate your help.
Thanks.

I just bought the "Excel 2007 Macros Made Easy" book and am working my way
through it, although rather slowly.

Jim
 
C

Cinco

Cinco said:
I've read and studied code from a number of posts on this subject but my
"newbie" macro code has errors. I have the minimumscale value and
maximumscale value (entered by the user) stored in Sheet1 at $E$2 and $F$2.
My chart is in Sheet2. This is my complete macro:

Sub ChangeXAxisScale()
'
' ChangeXAxisScale Macro
'
With Worksheets("Sheet2")
With ActiveChart.Axes(1, 1)

.MinimumScale = Range("$E$2").Value
.MaximumScale = Range("$F$2").Value

End With
End With

End Sub

I know I am missing something(s) very basic and would appreciate your help.
Thanks.

I just bought the "Excel 2007 Macros Made Easy" book and am working my way
through it, although rather slowly.

Jim

The following macro works but only when run from the "chart" sheet. What do
I need to add so that it runs and uses the user entered input from Sheet1 and
not from the "chart" sheet? Thanks.

Sub ChangeXAxisScale()
'
' ChangeXAxisScale Macro
'
With ActiveSheet.ChartObjects(1).Chart.Axes(1, 1)

.MinimumScale = Range("$E$2")
.MaximumScale = Range("$F$2")

End With



End Sub
 
J

Jon Peltier

Something like this:

.MinimumScale = Worksheets("Sheet1").Range("$E$2").Value
.MaximumScale = Worksheets("Sheet1").Range("$F$2").Value

And you have to make sure the minimum in E2 is not greater than the current
maximum.

- Jon
-------
Jon Peltier, Microsoft Excel MVP
Peltier Technical Services, Inc.
http://PeltierTech.com/WordPress/
_______


Cinco said:
The following macro works but only when run from the "chart" sheet. What
do
I need to add so that it runs and uses the user entered input from Sheet1
and
not from the "chart" sheet? Thanks.

Sub ChangeXAxisScale()
'
' ChangeXAxisScale Macro
'
With ActiveSheet.ChartObjects(1).Chart.Axes(1, 1)

.MinimumScale = Range("$E$2")
.MaximumScale = Range("$F$2")

End With



End Sub

__________ Information from ESET Smart Security, version of virus
signature database 4221 (20090706) __________

The message was checked by ESET Smart Security.

http://www.eset.com



__________ Information from ESET Smart Security, version of virus signature database 4221 (20090706) __________

The message was checked by ESET Smart Security.

http://www.eset.com
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top