Classe ShapeNode - géométrie (Excel VBA)
Cet objet représente la géométrie et les propriétés de modification de la géométrie des nœuds d'une forme libre définie par l'utilisateur. Pour utiliser une variable de classe ShapeNode, elle doit d'abord être instanciée, par exemple
Dim shpn as ShapeNode
Set shpn = ActiveChart.OLEObjects.ShapeRange.Nodes(Index:=1)
For Each
Voici un exemple de traitement des éléments ShapeNode dans une collection
Dim shpnNode As ShapeNode
For Each shpnNode In ActiveChart.OLEObjects.ShapeRange.Nodes
Next shpnNode
EditingType
Si le nœud spécifié est un sommet, cette propriété renvoie une valeur qui indique comment les modifications apportées au nœud affectent les deux segments connectés au nœud. En lecture seule MsoEditingType.
Cette propriété est en lecture seule. Utilisez la méthode SetEditingType pour définir la valeur de cette propriété.
Dim metEditingType As Office.MsoEditingType
metEditingType = ActiveChart.OLEObjects.ShapeRange.Nodes(1).EditingType
Points
Renvoie la position du nœud spécifié en tant qu'une paire de coordonnées. Chaque coordonnée est exprimée en points. Type de données Variant en lecture seule.
Cette propriété est en lecture seule. Utilisez la méthode SetPosition pour définir la valeur de cette propriété.
Set myDocument = Worksheets(1)
With myDocument.Shapes(3).Nodes
pointsArray = .Item(2).Points
currXvalue = pointsArray(1, 1)
currYvalue = pointsArray(1, 2)
.SetPosition 2, currXvalue + 200, currYvalue + 300
End With
SegmentType
Cette propriété renvoie une valeur qui indique si le segment associé au nœud spécifié est un segment de droite ou de courbe. Si le nœud spécifié est le point de contrôle d'un segment de courbe, la propriété renvoie msoSegmentCurve. En lecture seule MsoSegmentType.
Utilisez la méthode SetSegmentType pour définir la valeur de cette propriété.
Dim mstSegmentType As Office.MsoSegmentType
mstSegmentType = ActiveChart.OLEObjects.ShapeRange.Nodes(1).SegmentType