AW: nochmal ...
08.07.2008 16:57:30
fcs
Hallo Jan,
man kann per VBA die Koordinaten der beiden Endpunkte einer Linie vergleichen, um herauszufinden, wie die Linie verläuft.
Dazu muss man die Nummer oder den Namen des Shapes kennen.
Gruß
Franz
Beispiel:
Sub aatest()
'orientierung aller Linien anzeigen
For i = 1 To ActiveSheet.Shapes.Count
Set objShape = ActiveSheet.Shapes(i)
If objShape.Type = msoLine Then
MsgBox objShape.Name & ": " & OrientierungLinie(objShape)
End If
Next
End Sub
Function OrientierungLinie(ByVal objLinie As Shape) As String
'Orientierung von Linie bestimmen
Dim arrPoint1, arrPoint2, i As Integer
With objLinie
arrPoint1 = .Nodes(1).Points
arrPoint2 = .Nodes(2).Points
If arrPoint2(1, 1) > arrPoint1(1, 1) And arrPoint2(1, 2) arrPoint1(1, 2) Then
OrientierungLinie = "Top-Rechts"
ElseIf arrPoint2(1, 1) > arrPoint1(1, 1) And arrPoint2(1, 2) > arrPoint1(1, 2) _
Or arrPoint2(1, 1)