0

問題があります: Interop を使用して Powerpoint でグラフを作成していますが、うまくいきます。しかし、問題があります。いくつかの形状を描画するには、データシリーズのデータ​​ラベルの正確な位置を取得する必要があります。しかし、いまいましい位置を取得する方法は?DataLabel には left と top の値がありますが、無効のようです。たとえば、その位置に何かを描画すると、途方もなく表示されます。私がしなければならないある種の変換はありますか?

私のコードは次のようになります: Imports pptNS = Microsoft.Office.Interop.PowerPoint

for i = 1 to Targetchart.Seriescollection.count

    Dim DtL = DirectCast(TargetChart.SeriesCollection(i).datalabels, pptNS.DataLabels)
    For x = 1 To DtL.count
         Dim   DTS = DirectCast(DTL.Item(DTLItem), pptNS.DataLabel)
         Dim Left =dts.left 'seems to be wrong?
    next
 next

どんな助けでも素晴らしいでしょう!

4

1 に答える 1

0

私は解決策を見つけました: Topposition は次のようになります: TopPos = DTS.Top + TargetChart.ChartArea.Top + TargetShape.Top + 1.5 Dim LeftPos = DTS.Left + TargetChart.ChartArea.Left + TargetShape.Left

1.5。少しズレがあったのでToppositionに追加…

于 2012-11-23T07:32:18.967 に答える