У меня возникли трудности с использованием метода .Group
на ShapeRange
.Невозможно группировать некоторые фигуры в Powerpoint 2010
Например, я не могу группировать таблицу с текстовым полем и не могу группировать форму заголовка слайда с помощью текстового поля и т. Д. Я заметил, что Powerpoint не позволяет группировать определенные фигуры вместе, так как опция «Группа» отключена в контекстном меню:
Я стараюсь следующее VBA, который предсказуемо терпит неудачу:
Sub TestGroupShapes()
Dim sld As slide
Dim tb As Shape
Dim tb2 As Shape
Dim tbl As Shape
Set sld = ActivePresentation.Slides(1)
Set tbl = sld.Shapes.AddTable(3, 3, 100, 100, 100, 100)
tbl.Name = "Table"
Set tb = sld.Shapes.AddTextbox(msoTextOrientationHorizontal, 200, 200, 50, 50)
tb.Fill.Visible = msoCTrue
tb.Name = "TextBox1"
Set tb2 = sld.Shapes.AddTextbox(msoTextOrientationHorizontal, 300, 300, 50, 50)
tb2.Fill.Visible = msoCTrue
tb2.Name = "TextBox2"
'## This works. I am able to group two textbox shapes together:
sld.Shapes.Range(Array(tb2.Name, tb.Name)).Group
'## This fails, I am not able to group a shape with a Table
' Also fails, e.g., if I try to group with the slide's Title shape, etc.
sld.Shapes.Range(Array(tbl.Name, tb.Name)).Group
End Sub
существуют ли какие-либо другие методы, которые я мог бы использовать для «связывания» определенных фигур вместе?
Обновление 5/25/2013
Проблема заключается в том, что формы, которые могут копировать пользователь (Ctrl + V/и т.д.) сохраняют ту же самую .Name
в качестве исходной формы. Приложение, которое я разрабатываю, присваивает уникальным идентификаторам созданным им формам, но эти идентификаторы не останутся уникальными, если пользователь их копирует. Например, некоторый пользователь может «скопировать» существующее текстовое поле, а не вставить новый текстовое поле.
Поскольку приложение необходимо поддерживать и обновлять фигуры (таблицы, текстовые поля, диаграммы и т. Д.), Любая форма, созданная путем «копирования» существующей формы, может вызвать проблемы, поскольку мое приложение больше не будет чтобы определить, какие формы обновлять, удалять и т. д.
Что я надеялся сделать, это Group
их вместе. Хотя это не безотказный (пользователь может по-прежнему вручную Ungroup
их, но я чувствовал, что это было бы по крайней мере еще safegaurd.
Мне нравится ваш вопрос ... к сожалению, я думаю, что невозможно сгруппировать таблицы :( –
Я открываю это :) Мне любопытно, что невозможно группировать таблицы и другие фигуры или что определенные фигуры от этого метода не удается, но я не могу найти документацию о том, какие формы не могут быть сгруппированы, или почему они не могут быть сгруппированы :( –