View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
Peter T Peter T is offline
external usenet poster
 
Posts: 5,600
Default VBA in Excel 97 and 2003

Following works fine in my XL97

Sub test()
Dim ax As Axis
Dim d As Double
Set ax = ActiveSheet.ChartObjects(1).Chart.Axes(xlValue, _
xlPrimary)
d = ax.MinimumScale
MsgBox d
ax.MinimumScale = d - 1

End Sub

Would suggest there's something different about the chart/axis or the code
in your respective versions. Are you referring to an axis that has a
minimum scale, also look manually.

Regards,
Peter T


"Newbie" wrote in message
...
Hello,

The following macro works fine in Excel 2003. Its purpose is to set the
origin of the 2 axes (x and y, with a timescale on both x and y) of a
graphe.
On my PC which is running Excel 2003, every work fine. On others PCs with
Excel 97, it bumps on the line :
.MinimumScale = Deb
with the error message : "Impossible to set the MinimumScale property"
What is the problem?
Thanks for your help!

Newbie

----------------------------
Sub CalerOrigineAxes()
Dim Graphique As Object, Crobard As Object
Dim Deb As Long, Fin As Long, Clic As Integer

For Each Graphique In ActiveSheet.ChartObjects
Deb = [DebProj] 'Date de début du projet
Fin = [FinProj] 'Date de fin du projet
Set Crobard = Graphique.Chart

Clic = MsgBox("Confirmez vous la date de Début du projet : " &
Format(Deb, "dd/mm/yyyy") & Chr(13) & _
"et la date de Fin : " & Format(Fin, "dd/mm/yyyy") & Chr(13) & Chr(13)

&
"Sinon, corrigez les dans la feuille Excel", vbOKCancel, "Caler l'origine
des axes")
If Clic = vbCancel Then Exit Sub 'Si l'utilisateur à cliqué sur
annuler...


With Crobard.Axes(xlCategory)
.MinimumScale = Deb
.MaximumScale = Fin
.MinorUnit = 1
.MajorUnit = 15
.Crosses = xlCustom
.CrossesAt = Deb
.ReversePlotOrder = False
.ScaleType = xlLinear
.DisplayUnit = xlNone
End With