Excel 2003 VBA中的饼图数据标签

时间:2011-06-27 16:02:12

标签: excel pie-chart

我在Excel 2003上的饼图中遇到了一个非常奇怪的问题。我将在VBA中完全设置数据标签的.Top或.Left属性,但Excel会自动将其移动到另一个值。为什么会这样?我该如何解决这个问题?从我的测试来看,这个问题似乎存在于Excel 2007中。要了解我的意思,请尝试在excel 2007中创建带有数据标签的饼图,并在图表上运行以下功能:

Sub problemExample(xlcht As Excel.Chart)

With xlcht.SeriesCollection(1)

    For aSlice = 1 To .Points.Count
        .Points(aSlice).DataLabel.Top = 43
        Range("F" & (aSlice + 1)).Value = .Points(aSlice).DataLabel.Top
        .Points(aSlice).DataLabel.Left = 38
        Range("G" & (aSlice + 1)).Value = .Points(aSlice).DataLabel.Left
    Next aSlice
End With
End Sub

1 个答案:

答案 0 :(得分:0)

原因是位置被量化。顶部,左侧,宽度和高度属性不是可能值的连续谱,它们只能通过固定增量进行更改。如果你在这些增量之间选择一些东西,excel会立即将属性四舍五入到最接近的增量值。