|
やっぱり応用が出来なかったのですね・・。それなら初めから「系列は3つある」と
条件を提示すればよかったと思います。二度手間にならずに済むのだから。
ま、いちおうこんな感じで。
Sub MyChart_Set_Axis2()
Dim MyCh As Chart, MySe As Variant
Dim i As Integer
Dim MxP As Single, MiP As Single
Set MyCh = ActiveSheet.ChartObjects(1).Chart
Set MySe = MyCh.SeriesCollection
With WorksheetFunction
For i = 1 To MySe.Count
If i = 1 Then
MxP = .Max(MySe.Item(i).Values)
MiP = .Min(MySe.Item(i).Values)
Else
If .Max(MySe.Item(i).Values) > MxP Then
MxP = .Max(MySe.Item(i).Values)
End If
If .Min(MySe.Item(i).Values) < MiP Then
MiP = .Min(MySe.Item(i).Values)
End If
End If
Next i
MxP = .Ceiling(MxP, 0.05)
MiP = .Floor(MiP, 0.05)
End With
With MyCh.Axes(xlValue)
.MajorUnit = 0.05
.MinimumScale = MiP
.MaximumScale = MxP
End With
Set MySe = Nothing: Set MyCh = Nothing
End Sub
|
|