Улучшение производительности кода Vb.net для PowerPoint
Мой код занимает намного больше времени в Office 7 32-разрядных PowerPoint, в то время как в Office 2013 он имеет довольно хорошую производительность.
Я добавил офисную тему, когда удаляю тему из презентации, тогда она работает очень хорошо.
Могу ли я улучшить производительность из кода или это ограничение PowerPoint 2007, которое создает устаревшие. Если его производительность может быть улучшена из кода, как я могу?
Вот мой код, который занимает слишком много времени.
dataLabelVerticalGapPointer = (dataLabelsVerticalGap - dataLabelTextSize) / 2
For counterInteger As Integer = 0 To optionCountInteger - 1
tempTextBoxShapeObject = ppSlideObject.Shapes.AddTextbox(MsoTextOrientation.msoTextOrientationHorizontal, IIf((chartShapeLeft - datalabelsLeftMarginAdjustment) < 0, 0, chartShapeLeft - datalabelsLeftMarginAdjustment), chartShapeTop + dataLabelVerticalGapPointer, TB_DATALABEL_WIDTH + datalabelWidthAdjustmentFactor, TB_DATALABEL_HEIGHT)
With tempTextBoxShapeObject
If IsHidden Then
.Visible = MsoTriState.msoFalse
End If
'EZVOTEMNT-434 - 12 may 15 --- umair.s --- percentage text box alignment
.TextFrame.VerticalAnchor = MsoVerticalAnchor.msoAnchorTop
.TextFrame.TextRange.Text = datalabelValuesArr(counterInteger)
.Name = TB_DATALABEL
.TextFrame.TextRange.Font.Size = dataLabelTextSize
'EZVOTEMNT-434 - 12 may 15 --- umair.s --- percentage text box wrapping fixed
.TextFrame.MarginRight = 0
.TextFrame2.MarginTop = 0
.TextFrame2.MarginBottom = 0
.TextFrame2.MarginLeft = 0
.TextFrame2.AutoSize = MsoAutoSize.msoAutoSizeTextToFitShape
'EZVOTEMNT-115 --- 22 may 13 --- ahaq --- Clear Responses should not override/reset custom changes to the design of the slides and slide objects
'If clearTextBoxDataLabelColorsFlag Then
.TextFrame.TextRange.Font.Color.RGB = TranslateColor(DefaultChartLabelsColor)
'Else
'.TextFrame.TextRange.Font.Color.RGB = tempTextBoxDataLabelsColorsArr(colorsArrayIndex)
'clearTextBoxDataLabelColorsFlag = True
'End If
dataLabelVerticalGapPointer += dataLabelsVerticalGap * 0.995
colorsArrayIndex += 1
End With
Next
специально эти строки
tempTextBoxShapeObject = ppSlideObject.Shapes.AddTextbox(MsoTextOrientation.msoTextOrientationHorizontal, IIf((chartShapeLeft - datalabelsLeftMarginAdjustment) < 0, 0, chartShapeLeft - datalabelsLeftMarginAdjustment), chartShapeTop + dataLabelVerticalGapPointer, TB_DATALABEL_WIDTH + datalabelWidthAdjustmentFactor, TB_DATALABEL_HEIGHT)
.TextFrame.TextRange.Text = datalabelValuesArr(counterInteger)
занимает больше времени
Я искал, но не мог найти способ улучшить производительность моего кода, спасибо заранее