我有一个宏,可以为三个数据系列创建折线图。 Excel 自动在图表周围添加边框,我鄙视这一点,但不知道如何删除它。我尝试过这些的变体:
ActiveSheet.Shapes("图表 1").Line.Visible = msoFalse
ChartArea.Border.LineStyle = xlNone
这是一个示例数据集:
Data1 Data2 Data3
2005 39 907 108
2006 439 341 490
2007 238 554 570
2008 882 112 134
2009 924 222 50
2010 155 550 754
2011 154 681 714
2012 235 186 917
这是我当前的代码:
Sub MakeCharts2()
'save active sheet
Dim ActSheet As Worksheet
Set ActSheet = ActiveSheet
'save sheetname as string
Dim strSheetName As String
strSheetName = ActiveSheet.Name
ActSheet.Select
'insert chart
Range("A1:D9").Select
ActiveSheet.Shapes.AddChart2(227, xlLine).Select
ActiveChart.SetSourceData Source:=Range("A1:D9")
ActiveChart.Location Where:=xlLocationAsNewSheet, Name:="Chart_" & strSheetName
ActiveChart.ChartArea.Select
'add title to chart
ActiveChart.ChartTitle.Select
Selection.Caption = "=" & strSheetName
' remove chart border: THIS IS WHERE I'M HAVING TROUBLE.
ActiveChart.ChartArea.Select
ActiveChart.Axes(xlValue).MajorGridlines.Select
ActiveSheet.Shapes("Chart 1").Line.Visible = msoFalse
Selection.Delete
'add vertical axis
ActiveChart.Axes(xlValue, xlPrimary).HasTitle = True
ActiveChart.Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "Tons"
End Sub
最佳答案
将此行 ActiveSheet.Shapes("Chart 1").Line.Visible = msoFalse
更改为
ActiveSheet.Shapes(ActiveChart.Parent.Name).Line.Visible = msoFalse
关于excel - 使用VBA创建图表并删除边框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38777012/