2017-11-30 3 views
1

のためのX軸とY軸を設定します。私はランタイムエラーが発生しています13 'タイプの不一致'。コードが示唆するように、私はZ6:Z9の範囲からX軸とY軸の値を設定したいと思います。は、私はこのコードが動作するように見えることはできません両方の制限

Sub Axis() 
    Dim Cht As ChartObject 
    Set Cht = Worksheets("Data Input & Summary").ChartObjects("Chart 2").Chart 
    With Cht.Axes(xlCategory) 
    .MaximumScale = .Range("Z7").Value 
    .MinimumScale = .Range("Z6").Value 
    End With 
    With Cht.Axes(xlValue) 
    .MaximumScale = .Range("Z9").Value 
    .MinimumScale = .Range("Z8").Value 
    End With 
End Sub 
+0

- 'Chart'として' Cht'を宣言します。あなたはいくつかの行を下に置くでしょう。 :)私が知っている私に「オブジェクトはこのプロパティまたはメソッドをサポートしていません」というエラー:( – Vityata

+1

は、説明をありがとう! –

+0

を与える:)しかし、あなたは、コードを下に移動し始めている:) – Vityata

答えて

2

通常、コードには3つのエラーがあります。あなたはChartObjectにとしてコンピュータ・ハイテック(CHT)を宣言していますが、チャートに設定

Sub AxisSomething() 

    Dim Cht As ChartObject 
    Set Cht = Worksheets(1).ChartObjects(1) 

    With Cht.Chart.Axes(xlCategory) 
     .MaximumScale = Worksheets(1).Range("Z7").Value 
     .MinimumScale = Worksheets(1).Range("Z6").Value 
    End With 

    With Cht.Chart.Axes(xlValue) 
     .MaximumScale = Worksheets(1).Range("Z9").Value 
     .MinimumScale = Worksheets(1).Range("Z8").Value 
    End With 

End Sub 
  • : は、これはのようになります方法です。
  • あなたはグラフオブジェクトの.Chartを参照してください.Axesを取得するには、ChartObjectにとしてそれを宣言した場合。
  • あなたが.を使用するたびに、それは上記withを指します。 .RangeChart.Axes(xlCategory)を指すべきではありません
  • 最後に、コードをStackOverflowにアップロードするときは、それを「再生産可能」にすることをお勧めします。このように、Worksheets("Data Input & Summary")のinstadはWorksheets(1)を書きます。そしてあなた自身の名前を修正してください。初めとして
+1

ああ、私が見 –

+0

@KevinP。 - どういたしまして。 – Vityata

関連する問題