Freigeben über


CatalogMergeShapes-Objekt (Publisher)

Stellt die Formen dar, die im Datensatzkatalogbereich der angegebenen Publikation enthalten sind.

Hinweise

Die Größe des Datensatzkatalogbereichs wird automatisch angepasst, sodass Objekte, die größer als dieser Bereich sind oder beim Hinzufügen außerhalb dieses Bereichs liegen, aufgenommen werden.

Wenn die Größe des Datensatzkatalogbereichs verkleinert oder der Bereich verschoben wird, wird die Größe der Formen innerhalb des Datensatzkatalogbereichs automatisch angepasst bzw. ihre Position geändert.

Der Katalogzusammenführungsbereich kann Bild- und Textdatenfelder enthalten, die Sie zusätzlich zu anderen Designelementen, die Sie auswählen, eingefügt haben.

Verwenden Sie die CatalogMergeItems-Eigenschaft des Shape- oder ShapeRange-Objekts , um den Inhalt des Katalogzusammenführungsbereichs zurückzugeben.

Verwenden Sie die AddToCatalogMergeArea -Methode der Objekte Shape oder ShapeRange, um einem Datensatzkatalogbereich Formen hinzuzufügen.

Verwenden Sie CatalogMergeItems (Index), wobei index die Indexnummer ist, um eine einzelne Form des Katalogzusammenführungsbereichs zurückzugeben.

Verwenden Sie die RemoveFromCatalogMergeArea -Methode der Objekte Shape oder ShapeRange, um Formen aus einem Datensatzkatalogbereich zu entfernen. Entfernte Formen werden nicht gelöscht, sondern stattdessen auf die Publikationsseite platziert, die den Datensatzkatalogbereich enthält.

Beispiel

Das folgende Beispiel prüft, ob die angegebene Publikation einen Datensatzkatalogbereich enthält. Wenn dies der Fall ist, wird eine Liste der darin enthaltenen Shapes zurückgegeben.

Sub ListCatalogMergeAreaContents() 
 
 Dim pgPage As Page 
 Dim mmLoop As Shape 
 Dim intCount As Integer 
 
 For Each pgPage In ThisDocument.Pages 
 For Each mmLoop In pgPage.Shapes 
 
 If mmLoop.Type = pbCatalogMergeArea Then 
 
 With mmLoop.CatalogMergeItems 
 For intCount = 1 To .Count 
 Debug.Print "Shape ID: " & _ 
 mmLoop.CatalogMergeItems.Item(intCount).ID 
 Debug.Print "Shape Name: " & _ 
 mmLoop.CatalogMergeItems.Item(intCount).Name 
 Next 
 End With 
 
 End If 
 
 Next mmLoop 
 Next pgPage 
 
End Sub 


Das folgende Beispiel fügt dem Datensatzkatalogbereich ein Rechteck in der angegebenen Publikation hinzu. In diesem Beispiel wird davon ausgegangen, dass der ersten Seite der Publikation ein Katalogzusammenführungsbereich hinzugefügt wurde.

ThisDocument.Pages(1).Shapes.AddShape(1, 80, 75, 450, 125).AddToCatalogMergeArea

Das folgende Beispiel entfernt die erste Form aus der Datensatzkatalogbereich.

ThisDocument.Pages(1).Shapes(1).CatalogMergeItems(1).RemoveFromCatalogMergeArea

Das folgende Beispiel prüft, ob die angegebene Publikation einen Datensatzkatalogbereich enthält. Wenn dies der Fall ist, werden alle Formen aus dem Datensatzkatalogbereich entfernt und gelöscht, und der Datensatzkatalogbereich wird dann aus der Publikation entfernt.

Sub DeleteCatalogMergeAreaAndAllShapesWithin() 
 Dim pgPage As Page 
 Dim mmLoop As Shape 
 Dim intCount As Integer 
 Dim strName As String 
 
 For Each pgPage In ThisDocument.Pages 
 For Each mmLoop In pgPage.Shapes 
 
 If mmLoop.Type = pbCatalogMergeArea Then 
 With mmLoop.CatalogMergeItems 
 For intCount = .Count To 1 Step -1 
 strName = mmLoop.CatalogMergeItems.Item(intCount).Name 
 .Item(intCount).RemoveFromCatalogMergeArea 
 pgPage.Shapes(strName).Delete 
 Next 
 End With 
 mmLoop.RemoveCatalogMergeArea 
 End If 
 
 Next mmLoop 
 Next pgPage 
 
 End Sub 

Methoden

Eigenschaften

Siehe auch

Support und Feedback

Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.