Когда использовать TextFrame или TextFrame2 в VBA

Пример, в Powerpoint:

Объект TextFrame:

Представляет текстовый фрейм в объекте Shape. Содержит текст в текстовый фрейм и свойства и методы, которые контролируют выравнивание и закрепление текстового фрейма.

Объект TextFrame2:

Представляет текстовый фрейм в объекте Shape или ShapeRange. Содержит текст в текстовом фрейме и раскрывает свойства и методы, которые контролировать выравнивание и привязку текстового фрейма.

Таким образом, TextFrame2 также ссылается на объект ShapeRange, и он обладает несколькими свойствами, кроме TextFrame.

Я не совсем уверен, когда я должен использовать тот или иной, например, для манипулирования текстовыми значениями, хранящимися в ячейках таблицы, на слайде PowerPoint. Оба, похоже, работают, и следующий оператор возвращает TRUE.

Dim tbl as Table
Set tbl = ActivePresentation.Slides(1).Shapes("Table1").Table

tbl.Cell(r, c).Shape.TextFrame2.TextRange.Characters.Text = _
    tbl.Cell(r, c).Shape.TextFrame.TextRange.Characters.Text

Есть ли какое-то окончательное руководство, когда я должен использовать TextFrame vs, когда я должен использовать TextFrame2?

Ответ 1

По словам Джона Пельтье здесь: http://peltiertech.com/programming-excel-2007-2010-autoshapes-with-vba/

"Элемент TextFrame2 был добавлен в Excel 2007 и обеспечивает лучший контроль над форматированием текста. Поскольку он не поддерживает обратную совместимость, я бы рекомендовал использовать объект TextFrame

Я предполагаю, что аналогичная ситуация применяется в PPT.