我正在移植一些用于在 Excel 中生成散点图的代码,从 Win 7 / Excel 2010 到 OS X / Excel 2011。在 Mac 上,数据点显示为阴影。我不想要阴影,我不知道如何摆脱它。
使用此工作表(如果您不想下载启用宏的工作表,它在单元格 A1:B6 中只有随机数)以下代码运行良好,但会产生带有阴影的数据点:
Sub plotNoShadow()
Dim x As Range
Dim y As Range
Dim cht As ChartObject
Set x = ActiveSheet.Range("A1:A6") 'haphazard numbers
Set y = ActiveSheet.Range("B1:B6")
Set cht = ActiveSheet.ChartObjects.Add(Left:=150, Top:=50, Width:=200, Height:=160)
With cht.Chart
.ChartType = xlXYScatter
.SeriesCollection.NewSeries
With .SeriesCollection(1)
.XValues = x
.Values = y
.Format.Shadow.Visible = msoFalse 'This seems to parse, but have no effect
End With
.SetElement (msoElementLegendNone)
.SetElement (msoElementPrimaryValueGridLinesNone)
End With
End Sub
谁能给我解释一下:
如何修改此代码以删除阴影,以及
这段代码是如何运行的,但是将 SeriesCollection(1).Format.Shadow.Visible 设置为 msoFalse 却设法在没有任何明显效果的情况下运行?
根据下面的评论线程,这是左侧宏输出的屏幕截图,中间打开然后关闭阴影的点,右侧打开阴影。为了清楚起见,我编辑了宏以删除图例和网格线。看起来宏输出的阴影比“shadow on”状态少,但比“shadow off”状态的阴影多。