SOLVED

Positionner des "SHAPES" sur une feuille de calcul

Copper Contributor

Bonjour,

Je veux inclure une forme sur ma feuille Excel.

Je crée une macro ce qui donne :

 

ActiveSheet.Shapes.AddConnector(msoConnectorStraight, 1346.8220472441, _
411.2288188976, 1432.6270866142, 552.3304724409).Select
Selection.ShapeRange.Line.EndArrowheadStyle = msoArrowheadTriangle
Range("BB25").Select
End Sub

La fonction attend des paramètres "single".

Function AddConnector(Type As MsoConnectorType, BeginX As Single, BeginY As Single, EndX As Single, EndY As Single) As Shape
Membre de Excel.Shapes

Question : quelle fonction permet de passer de l'adresse de la cellule où je veux pointer la flèche aux chiffres "single" qu'attend la fonction addconnector?

Impossible de trouver la réponse dans toutes les aides que j'ai consultées

4 Replies
best response confirmed by Rosifoncé (Copper Contributor)
Solution

@Rosifoncé 

Par exemple:

Sub Macro1()
    Dim X1 As Single
    Dim Y1 As Single
    Dim X2 As Single
    Dim Y2 As Single
    Dim shp As Shape
    With Range("B2")
        X1 = .Left
        Y1 = .Top
    End With
    With Range("D4")
        X2 = .Left + .Width
        Y2 = .Top + .Height
    End With
    Set shp = ActiveSheet.Shapes.AddConnector(msoConnectorStraight, X1, Y1, X2, Y2)
    shp.Line.EndArrowheadStyle = msoArrowheadTriangle
End Sub

Résultat:

S1057.png

Merci .
Comme vous l'avez deviné je ne suis pas un expert de Visual Basic que je pratique par tâtonnements. Je cherche toujours un document qui expliquerait l'écran visual basic et le sens des icônes. Cela semble évident pour tous sauf pour un néophyte.
Pourquoi microsoft ne fournit pas le manuel de référence en aide?
Merci vous m'enlevez une épine du pied.

Eigentlich wollte ich nur wissen welchen Wert die Konstante "msoConnectorStraight" hat, weil die Microsoft Hilfe es mir nicht anzeigt. Außerdem muss ich den Suchbegriff nach "F1" immer noch mal angeben, damit überhaupt etwas angezeigt wird. Und dieses Beispiel zeigt mir nicht, was hinter "X4) kommt "line" oder "select" oder gar nichts? Dafür aber eine neue Konstante "msoArrowheadTriangle".

@Guardian_44 

Im "Object Browser" (F2):

S1884.png

1 best response

Accepted Solutions
best response confirmed by Rosifoncé (Copper Contributor)
Solution

@Rosifoncé 

Par exemple:

Sub Macro1()
    Dim X1 As Single
    Dim Y1 As Single
    Dim X2 As Single
    Dim Y2 As Single
    Dim shp As Shape
    With Range("B2")
        X1 = .Left
        Y1 = .Top
    End With
    With Range("D4")
        X2 = .Left + .Width
        Y2 = .Top + .Height
    End With
    Set shp = ActiveSheet.Shapes.AddConnector(msoConnectorStraight, X1, Y1, X2, Y2)
    shp.Line.EndArrowheadStyle = msoArrowheadTriangle
End Sub

Résultat:

S1057.png

View solution in original post