0

EXCEL 2003 アプリケーションを EXCEL 2010 に変換しています。データは正常に表示されますが、軸が表示されなくなりました。自動スケールで軸を表示する機能は?

例: 次の系列を Excel 折れ線グラフにプロットするとします。[0.22,0.33,0.44,0.55,0.66,0.77,0.88,0.99,1.1,1.21,1.32,1.43,1.54,1.65,1.76,1.87,1.98,2.09,2.2] Excel は、y 軸の値が [ 0,0.5,1,1.5,2,2.5] [ Excel はグラフの軸の値をどのように決定しますか? 1 . チャートに示されている自動値 [0,0.5,1,1.5,2,2.5] で y 軸を作成する方法は?

ありがとう

関連するコードで更新 -

With ActiveChart
         .SeriesCollection(2).Select
         '.SeriesCollection(2).AxisGroup = 2

         .HasTitle = True
         .ChartTitle.Text = OutputTitle & Chr(10) & ChartTitle2
         .Axes(xlValue).HasTitle = True
         .Axes(xlValue).AxisTitle.Text = AxisTitle1
         .Axes(xlValue).AxisTitle.Font.Bold = False
         .HasAxis(Excel.XlAxisType.xlCategory, Excel.XlAxisGroup.xlPrimary) = True
         .Export Filename:=ExportFile, FilterName:="GIF"
End with

'.SeriesCollection(2).AxisGroup = 2 のコメントを外すと、y 軸が表示されますが、x 軸のラベルは値との不一致でめちゃくちゃになります。

現在のチャート - ここに画像の説明を入力

スケーリングされた軸が表示された目的のグラフ - ここに画像の説明を入力

4

1 に答える 1

2

軸がオンになっていることを確認するには、次を使用します。

With xlApp.ActiveChart
        .HasAxis(Excel.XlAxisType.xlCategory, Excel.XlAxisGroup.xlPrimary) = True
End With

次のように特に指定しない限り、範囲値は自動です。

' Set Axis Scales
    With xlApp.Charts("Chart Name").Axes(2)
        .MinimumScale = 100
        .MaximumScale = 2000
        .MajorUnit = 1000
        .MinorUnit = 100
    End With

もう少し完全にするために、各値とカテゴリに明示的に対処してみて、それが役立つかどうかを確認してください。

With xlApp.ActiveChart
  .SeriesCollection(1).XValues = "='sheet name'!R21C4:R46C4"
  .SeriesCollection(1).Values = "='sheet name'!R21C5:R46C5"
  .SeriesCollection(1).Name = "='series name'"
  .SeriesCollection(1).axisgroup = Excel.XlAxisGroup.xlPrimary
  .HasAxis(Excel.XlAxisType.xlCategory, Excel.XlAxisGroup.xlPrimary) = True
  .HasAxis(Excel.XlAxisType.xlValue, Excel.XlAxisGroup.xlPrimary) = True
  .Axes(Excel.XlAxisType.xlCategory, Excel.XlAxisGroup.xlPrimary).HasTitle = True
  .Axes(Excel.XlAxisType.xlCategory, Excel.XlAxisGroup.xlPrimary).AxisTitle.Characters.Text = "x axis"
  .Axes(Excel.XlAxisType.xlValue, Excel.XlAxisGroup.xlPrimary).HasTitle = True
  .Axes(Excel.XlAxisType.xlValue, Excel.XlAxisGroup.xlPrimary).AxisTitle.Characters.Text = "y axis"
End With

軸グループが 2 に設定されているようですが、2 軸を使用していますか?

次のように設定します。

.SeriesCollection(2).axisgroup = Excel.XlAxisGroup.xlPrimary

*編集*

軸にオートスケールを設定するには:

.Axes(xlValue).MinimumScaleIsAuto = True
.Axes(xlValue).MaximumScaleIsAuto = True
.Axes(xlValue).MinorUnitIsAuto = True
.Axes().MajorUnitIsAuto = True
.Axes().DisplayUnit = xlHundreds
于 2013-10-02T17:57:33.877 に答える