我的图表在x轴上有日期,我尝试使用Excel VBA设置此轴的最大值和最小值。以下是我的代码似乎无法正常工作。任何人都可以帮忙。
With ActiveSheet.ChartObjects(1).Chart.Axes(xlValue)
.MinimumScale = ActiveSheet.Range("C33").Value
.MaximumScale = ActiveSheet.Range("D54").Value
End With
答案 0 :(得分:2)
xlValue
指的是y轴(或值轴)。您有兴趣调整需要xlCategory
的x轴值(或类别轴)。所以使用
With ActiveSheet.ChartObjects(1).Chart.Axes(xlCategory)
.MinimumScale = ActiveSheet.Range("C33").Value
.MaximumScale = ActiveSheet.Range("D54").Value
End With
答案 1 :(得分:0)
我为双变量正态分布创建了一个图表。 X1遵循mu1和stdev1的正态分布,同样对于X2。 X1沿X轴。我希望限制在平均值的4个标准偏差范围内。 mywidth和myheight是事先分配的。数据从第2行开始,因为第1行有标题.X1的数据在第1列。 n是数据行数。
mysheetname = ActiveSheet.Name
Set mychart = Sheets(mysheetname).ChartObjects.Add(Left:=mywidth, Top:=myheight + 2, Width:=400, Height:=250)
mychart.Chart.ChartType = xlXYScatter
mychart.Chart.SeriesCollection.NewSeries
mychart.Chart.SeriesCollection(1).Values = Range(Cells(outputrow + 1, outputcol + 1), Cells(outputrow + n, outputcol + 1))
mychart.Chart.SeriesCollection(1).XValues = Range(Cells(outputrow + 1, outputcol), Cells(outputrow + n, outputcol))
mychart.Chart.HasLegend = False
mychart.Chart.Axes(xlValue).MinimumScale = mu2 - 4 * sigma2
mychart.Chart.Axes(xlValue).MaximumScale = mu2 + 4 * sigma2
mychart.Chart.Axes(xlCategory).MinimumScale = mu1 - 4 * sigma1
mychart.Chart.Axes(xlCategory).MaximumScale = mu1 + 4 * sigma1