ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Shape number for a connector? (https://www.excelbanter.com/excel-programming/385348-shape-number-connector.html)

dan

Shape number for a connector?
 
Can anyone tell me what is the type (number) for MsoConnectorElbow? Is the
number the same for any Connector type?
Is there a reference on line that lists all of the type numbers for shapes?

I am using this to determine the shape that a connector is connected to:

For Each sh In ActiveSheet.Shapes

If sh.Type = 2 Then 'I think 1 is a MsoConnectorElbow shape
With sh.ConnectorFormat
Set endsh = .EndConnectedShape 'endsh is the name of the
shape that the line is connected to
Set begsh = .BeginConnectedShape 'begsh is the name of the
shape at the beginning of the line.
End With
Set isect1 = Application.Intersect(Range("r"), Range(endsh.Range))
Set isect2 = Application.Intersect(Range("r"), Range(begsh.Range))
MsgBox "Isect1, Isect2: " & isect1 & ", " & isect2
If (isect1 Is Nothing) And (isect2 Is Nothing) Then 'this is not the
droid you are looking for
'do nothing, continue in the loop
Else 'found the connector, need to kill it.
sh.Delete
End If
End If
Next sh

Is there another way to refer to the connector other than the number? Maybe
something like xlConnectorType or something like that, that would be easier
to remember?

Thanks!

joel

Shape number for a connector?
 

Have you ever used the VBA Object browser. it will give you the answer. On
the VBA code window right click and select object browser.
Straight = 1 elbow = 2 curve = 3

then enter MsoConnectorElbo next to the binoculars and press the binoculars.
"Dan" wrote:

Can anyone tell me what is the type (number) for MsoConnectorElbow? Is the
number the same for any Connector type?
Is there a reference on line that lists all of the type numbers for shapes?

I am using this to determine the shape that a connector is connected to:

For Each sh In ActiveSheet.Shapes

If sh.Type = 2 Then 'I think 1 is a MsoConnectorElbow shape
With sh.ConnectorFormat
Set endsh = .EndConnectedShape 'endsh is the name of the
shape that the line is connected to
Set begsh = .BeginConnectedShape 'begsh is the name of the
shape at the beginning of the line.
End With
Set isect1 = Application.Intersect(Range("r"), Range(endsh.Range))
Set isect2 = Application.Intersect(Range("r"), Range(begsh.Range))
MsgBox "Isect1, Isect2: " & isect1 & ", " & isect2
If (isect1 Is Nothing) And (isect2 Is Nothing) Then 'this is not the
droid you are looking for
'do nothing, continue in the loop
Else 'found the connector, need to kill it.
sh.Delete
End If
End If
Next sh

Is there another way to refer to the connector other than the number? Maybe
something like xlConnectorType or something like that, that would be easier
to remember?

Thanks!


dan

Shape number for a connector?
 
Thanks Joel - I saw that number, but I can't seem to make my code work. So I
guess I thought that the number wasn't right. Now I know it's my code...

Dan

"Joel" wrote:


Have you ever used the VBA Object browser. it will give you the answer. On
the VBA code window right click and select object browser.
Straight = 1 elbow = 2 curve = 3

then enter MsoConnectorElbo next to the binoculars and press the binoculars.
"Dan" wrote:

Can anyone tell me what is the type (number) for MsoConnectorElbow? Is the
number the same for any Connector type?
Is there a reference on line that lists all of the type numbers for shapes?

I am using this to determine the shape that a connector is connected to:

For Each sh In ActiveSheet.Shapes

If sh.Type = 2 Then 'I think 1 is a MsoConnectorElbow shape
With sh.ConnectorFormat
Set endsh = .EndConnectedShape 'endsh is the name of the
shape that the line is connected to
Set begsh = .BeginConnectedShape 'begsh is the name of the
shape at the beginning of the line.
End With
Set isect1 = Application.Intersect(Range("r"), Range(endsh.Range))
Set isect2 = Application.Intersect(Range("r"), Range(begsh.Range))
MsgBox "Isect1, Isect2: " & isect1 & ", " & isect2
If (isect1 Is Nothing) And (isect2 Is Nothing) Then 'this is not the
droid you are looking for
'do nothing, continue in the loop
Else 'found the connector, need to kill it.
sh.Delete
End If
End If
Next sh

Is there another way to refer to the connector other than the number? Maybe
something like xlConnectorType or something like that, that would be easier
to remember?

Thanks!



All times are GMT +1. The time now is 03:20 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com