IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Tracer automatiquement un trait entre deux shapes


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Homme Profil pro
    Autre
    Inscrit en
    Septembre 2016
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Autre

    Informations forums :
    Inscription : Septembre 2016
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Tracer automatiquement un trait entre deux shapes
    Bonjour,

    Lecteur régulier du forum et des fiches explicatives, je viens vers vous au sujet d'un point qui me bloque depuis plusieurs heures.

    Je souhaiterais, dans l'idéal, que l'utilisateur n'ait qu'à cliquer sur deux schapes pour qu'un trait se dessine automatiquement entre celles-ci.

    Dans la pratique, je ne vois pas où commencer...


    Si vous pouvez m'aiguiller, où me proposer une solution de substitution!

    Merci !

  2. #2
    Expert éminent
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    3 952
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 3 952
    Points : 9 281
    Points
    9 281
    Par défaut
    hello,
    tu peux utiliser des connecteurs (lignes) pour relier des formes entre elles.

    Voici un exemple de code où je relie 5 images par des connecteurs dans une feuille excel :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    Sub RelierTrombines()
        'J.P septembre 2016
        Dim conn(4) As Shape
        Dim i As Integer
        Worksheets("Trombi").Activate
        i = 1
        ' on crée un connecteur de type "en angle"
        Set conn(i) = ActiveSheet.Shapes.AddConnector(msoConnectorElbow, 1, 1, 1, 1)
        ' on relie l'image Image01 à l'image Image02 par le connecteur créé
        conn(i).ConnectorFormat.BeginConnect ActiveSheet.Shapes("Image01"), 1
        conn(i).ConnectorFormat.EndConnect ActiveSheet.Shapes("Image02"), 1
        'on colore le connecteur en rouge
        conn(i).Line.ForeColor.RGB = RGB(255, 0, 0)
        ' épaisseur de trait du connecteur
        conn(i).Line.Weight = 4
        'redessine  le connecteur
        conn(i).RerouteConnections
         i = i + 1
        Set conn(i) = ActiveSheet.Shapes.AddConnector(msoConnectorElbow, 1, 1, 1, 1)
        conn(i).ConnectorFormat.BeginConnect ActiveSheet.Shapes("Image02"), 1
        conn(i).ConnectorFormat.EndConnect ActiveSheet.Shapes("Image03"), 1
        conn(i).Line.ForeColor.RGB = RGB(255, 0, 0)
        conn(i).Line.Weight = 4
        conn(i).RerouteConnections
        i = i + 1
        Set conn(i) = ActiveSheet.Shapes.AddConnector(msoConnectorElbow, 1, 1, 1, 1)
        conn(i).ConnectorFormat.BeginConnect ActiveSheet.Shapes("Image03"), 1
        conn(i).ConnectorFormat.EndConnect ActiveSheet.Shapes("Image04"), 1
        conn(i).Line.ForeColor.RGB = RGB(255, 0, 0)
        conn(i).Line.Weight = 4
        conn(i).RerouteConnections
        i = i + 1
        Set conn(i) = ActiveSheet.Shapes.AddConnector(msoConnectorElbow, 1, 1, 1, 1)
        conn(i).ConnectorFormat.BeginConnect ActiveSheet.Shapes("Image04"), 1
        conn(i).ConnectorFormat.EndConnect ActiveSheet.Shapes("Image05"), 1
        conn(i).Line.Weight = 4
        'bleu
        conn(i).Line.ForeColor.RGB = RGB(0, 0, 255)
        conn(i).RerouteConnections
    End Sub
    et voici le résultat :

    Nom : RelierTrombines.png
Affichages : 1101
Taille : 184,9 Ko

    Ami calmant, J.P
    Jurassic computer : Sinclair ZX81 - Zilog Z80A à 3,25 MHz - RAM 1 Ko - ROM 8 Ko

  3. #3
    Expert éminent sénior
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Points : 18 677
    Points
    18 677
    Par défaut

    Salut J.P !

    J'aime bien tes illustrations mais ce sont toujours des tronches de politiques !
    Et vu la période de campagne venant de commencer en vue des élections présidentielles,
    comme on va se les taper dans le moindre média, ce serait bien de les remplacer
    par exemple par des visages souriants de belles plantes (genre belles femmes) !


    _________________________________________________________________________________________________________
    Je suis Paris, Nice, Bruxelles, Charlie, …
    C'est parce que la vitesse de la lumière est plus rapide que celle du son que tant de gens paressent brillants avant d'avoir l'air con ! (Thomas Boishardy)

  4. #4
    Expert éminent
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    3 952
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 3 952
    Points : 9 281
    Points
    9 281
    Par défaut
    hello Marc,
    tu préfères comme cela :

    Nom : RelierTrombines2.jpg
Affichages : 1088
Taille : 53,6 Ko



    Ami calmant, J.P
    Jurassic computer : Sinclair ZX81 - Zilog Z80A à 3,25 MHz - RAM 1 Ko - ROM 8 Ko

  5. #5
    Candidat au Club
    Homme Profil pro
    Autre
    Inscrit en
    Septembre 2016
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Autre

    Informations forums :
    Inscription : Septembre 2016
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    Bonjour à tous et merci pour ces réponses illustrées, tout particulièrement celle de Jurassic Pork qui m'aide grandement!

    Bon dimanche!

  6. #6
    Expert éminent sénior
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Points : 18 677
    Points
    18 677
    Par défaut




    C'est exotique mais bien plus charmant que les tronches que l'on va subir ces prochains mois !
    C'est parce que la vitesse de la lumière est plus rapide que celle du son que tant de gens paressent brillants avant d'avoir l'air con ! (Thomas Boishardy)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. créer un trait entre deux clics de souris
    Par doudouded dans le forum VB.NET
    Réponses: 2
    Dernier message: 24/10/2012, 21h35
  2. Réponses: 2
    Dernier message: 20/06/2012, 12h00
  3. Insérer automatiquement un espace entre deux chiffres
    Par mosta2010 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 14/06/2008, 08h03
  4. tracer un trait entre deux button
    Par sliminformatique dans le forum C++Builder
    Réponses: 8
    Dernier message: 04/03/2008, 22h09
  5. tracer un trait entre deux points
    Par takepaf dans le forum Graphisme
    Réponses: 4
    Dernier message: 15/02/2008, 08h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo