VBA-Programmierung in Microsoft Excel

Tutorial: Excel-Beispiele

VBA-Begriff: ShapeNodes-Auflistungsobjekt

Eine Auflistung aller ShapeNode-Objekte des angegebenen Freihandobjekts. Jedes ShapeNode-Objekt stellt entweder einen Knoten zwischen Abschnitten oder einen Steuerpunkt eines gekrümmten Abschnitts eines Freihandobjekts dar. Sie können ein Freihandobjekt manuell oder mit Hilfe der Methoden BuildFreeform und ConvertToShape erstellen.

Verwenden der ShapeNodes-Auflistung

Verwenden Sie die Nodes-Eigenschaft, um die ShapeNodes-Auflistung zurückzugeben. Im folgenden Beispiel wird in myDocument der vierte Knoten der dritten Form gelöscht. Damit das Beispiel funktioniert, muss es sich bei der dritten Form um ein Freihandobjekt mit mindestens vier Knoten handeln.

Set myDocument = Worksheets(1)
myDocument.Shapes(3).Nodes.Delete 4

Verwenden Sie die Insert-Methode um einen neuen Knoten zu erstellen und ihn der ShapeNodes-Auflistung hinzuzfügen. Im folgenden Beispiel wird in myDocument nach dem vierten Knoten der dritten Form ein Übergangsknoten mit einem gekrümmten Abschnitt eingefügt. Damit das Beispiel funktioniert, muss es sich bei der dritten Form um ein Freihandobjekt mit mindestens vier Knoten handeln.

Set myDocument = Worksheets(1)
With myDocument.Shapes(3).Nodes
    .Insert 4, msoSegmentCurve, msoEditingSmooth, 210, 100
End With

Verwenden Sie Nodes(Index), wobei Index die Indexnummer des Knotens ist, um ein einzelnes ShapeNode-Objekt zurückzugeben. Falls es sich bei dem ersten Knoten der dritten Form in myDocument um einen Eckpunkt handelt, wird er im folgenden Beispiel zu einem Übergangspunkt gemacht. Damit das Beispiel funktioniert, muss es sich bei der dritten Form um ein Freihandobjekt handeln.

Set myDocument = Worksheets(1)
With myDocument.Shapes(3)
    If .Nodes(1).EditingType = msoEditingCorner Then
        .Nodes.SetEditingType 1, msoEditingSmooth
    End If
End With