| 
    
     |  | ▼L-way さん: こんばんは。
 
 >グラフ描写部のソースは同一なのですが、
 >標準グラフの設定が「散布図(平滑線)」の場合は、横軸の周波数がちゃんと表示されますが、
 >標準グラフの設定が「散布図以外」になっていると、横軸が1からの部分しか船が描写されません。
 
 よく検証してなくてゴメンですが、
 
 標準グラフは変更なしで、
 代わりに
 グラフの元データ範囲を選択してから(もちろん、マクロ内で)グラフの種類を
 宣言してみてはどうでしょう?
 
 '-----------------------------------
 Sub Test2()
 Dim SourceRange As Range
 Dim gr As Range
 Dim MaxValue#
 MaxValue = 300 '??? '◆要 変更
 
 With ActiveSheet
 Set SourceRange = .Range("A1").CurrentRegion
 SourceRange.Select '◆追加
 
 Set gr = .[D5].Resize(19, 8) '◆要 変更
 With .ChartObjects.Add(gr.Left, gr.Top, gr.Width, gr.Height)
 .Name = "グラフ1"
 .Chart.ChartType = xlXYScatterSmoothNoMarkers '◆順番変更
 .Chart.SetSourceData SourceRange, xlColumns
 .Chart.HasTitle = False
 .Chart.HasLegend = False
 With .Chart.Axes(Type:=xlValue)
 .HasTitle = True
 .AxisTitle.Text = "スペクトル"
 .MaximumScale = MaxValue
 .MinimumScale = 0
 .CrossesAt = 0
 .MajorUnit = (MaxValue / 10)
 .TickLabels.NumberFormat = "0.0E+00"
 End With
 With .Chart.Axes(Type:=xlCategory)
 .HasTitle = True
 .AxisTitle.Text = "周波数"
 .MinimumScale = 0.001
 .MaximumScale = 100.1
 .Crosses = xlAxisCrossesMinimum
 .ScaleType = xlScaleLogarithmic
 .LogBase = 10
 End With
 With .Chart.SeriesCollection(1).Border
 .ColorIndex = 1
 .Weight = xlThin
 End With
 End With
 End With
 
 End Sub
 
 |  |