Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


46506 / 76732 ←次へ | 前へ→

【35196】Re:グラフの最大値と最小値について
質問  ぷーちゃん  - 06/2/23(木) 16:31 -

引用なし
パスワード
   ▼Kein さん:
>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


Keinさん。二度手間をとらせて申し訳ありません。
それで、どうしてもグラフごとの最小値をもとにして切のいい値をグラフスケールの最大値と最小値にしたかったので、Keinさんに教えてもらった上のコードと合わせて下記のコードを作ったのですが、
With MyCh.Chart.Axes(xlValue) の .Chart のところで、コンパイルエラー(メソッドまたはデータメンバが見つかりません)となってしまいます。
まだ、なにも解っていない超初心者なので変なコードになっていると思いますが、どのようにすればいいのか教えて頂きたく、お願い致します。
(長くなって、すいません。)


  Dim MyCh As Chart, MySe As Variant
  Dim i As Integer
  Dim MxP As Single, MiP As Single
  Dim KanB As Single

  AAA1 = 5
  AAA2 = 10
  AAA3 = 50
  AAA4 = 500
  AAA5 = 5000
  AAA6 = 50000
  AAA7 = 500000

  BBB = 5

ActiveSheet.ChartObjects("グラフ 809").Activate
  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
  
If MiP < 100 Then KanB = AAA1
If MiP >= 100 And MiP < 1000 Then KanB = AAA2
If MiP >= 1000 And MiP < 10000 Then KanB = AAA3
If MiP >= 10000 And MiP < 100000 Then KanB = AAA4
If MiP >= 100000 And MiP < 1000000 Then KanB = AAA5
If MiP >= 1000000 And MiP < 10000000 Then KanB = AAA6
If MiP > 10000000 Then
KanA = AAA7
End If
   
  With WorksheetFunction
   MxP = .Ceiling(.MxP, KanB)
   MiP = .Floor(.MiP, KanB)
  End With
    
  With MyCh.Chart.Axes(xlValue)
   .MinimumScale = MiP
   .MaximumScale = MxP
  End With

  BMa1 = MyCh.Chart.Axes(xlValue).MajorUnit
  BMi1 = MyCh.Chart.Axes(xlValue).MinimumScale
  BBB1 = BMi1 + BMa1
  BBB4 = BMi1 + BMa1 * (BBB - 1)
  BBB5 = BMi1 + BMa1 * BBB
  
  BBB11 = ((BBB1 / BMi1) - 1) * 100
  BBB55 = ((BBB5 / BBB4) - 1) * 100
 
  Range("IT1") = Round(BBB11, 1)
  Range("IU1") = Round(BBB55, 1)

9 hits

【35187】グラフの最大値と最小値について ぷーちゃん 06/2/23(木) 14:08 質問
【35190】Re:グラフの最大値と最小値について Kein 06/2/23(木) 14:44 回答
【35196】Re:グラフの最大値と最小値について ぷーちゃん 06/2/23(木) 16:31 質問
【35197】Re:グラフの最大値と最小値について Kein 06/2/23(木) 16:41 発言
【35205】Re:グラフの最大値と最小値について ぷーちゃん 06/2/23(木) 18:35 質問
【35208】Re:グラフの最大値と最小値について Kein 06/2/23(木) 20:29 発言
【35209】Re:グラフの最大値と最小値について ぷーちゃん 06/2/23(木) 20:35 お礼

46506 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free