如何编写vba来删除电子表格中所有图表的所有x标签?

时间:2016-01-05 23:27:24

标签: vba charts axes

我在一个标签中有7个堆叠的柱形图。我想写一个vba来删除所有图表左侧的所有垂直标签。我认为这很简单,但事实并非如此!

1 个答案:

答案 0 :(得分:0)

所以你想"删除所有x标签"或"删除左侧的所有垂直标签"?这就好像你首先指的是水平x轴,然后是垂直的y轴 - 比特混乱。如果您使用Excel术语 - 垂直轴或水平轴,则有帮助。并删除轴,轴标题或轴刻度标签?

除此之外......你可以循环遍历工作表中的所有图表对象:

Sub loopCharts()

Dim i As Integer

For i = 1 to ActiveSheet.ChartObjects.Count

    'do some stuff with the chart

Next i  

End Sub

例如,如果要删除垂直轴:

Sub delVertAxisAllCharts()

Dim i As Integer

For i = 1 to ActiveSheet.ChartObjects.Count

    ActiveSheet.ChartObjects(i).Chart.Axes(xlValue).Delete

Next i  

End Sub

如果您只想删除水平刻度标签:

Sub remHorizTickLabels()

Dim i As Integer

For i = 1 to ActiveSheet.ChartObjects.Count

    ActiveSheet.ChartObjects(i).Chart.Axes(xlCategory).TickLabelPosition = xlNone

Next i  

End Sub

希望有帮助...