0

Excel 2003 の円グラフのデータ ラベルで非常に奇妙な問題に遭遇しました。データ ラベルの .Top プロパティまたは .Left プロパティを VBA で絶対に設定しますが、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
4

1 に答える 1

0

その理由は、位置が量子化されているためです。上、左、幅、および高さのプロパティは、可能な値の連続スペクトルではなく、一定の増分によってのみ変更できます。これらの増分の間で何かを選択すると、Excel はすぐにプロパティを最も近い増分値に丸めます。

于 2011-06-27T18:07:22.673 に答える