Macro vba et Représentation graphique? [Résolu]

Messages postés
10
Date d'inscription
lundi 8 novembre 2010
Dernière intervention
16 juin 2011
- 8 nov. 2010 à 09:17 - Dernière réponse :
Messages postés
10
Date d'inscription
lundi 8 novembre 2010
Dernière intervention
16 juin 2011
- 9 nov. 2010 à 09:44
Bien le bonjour,

Je viens poser une petite question:

Actuellement je suis entrain de réaliser une macro qui me permet au boulot de trier des données extrêmement simplement.
Au final j'obtiens 8 valeurs d'angles, par exemple:
280°
348°

140°
210°
78°
301°
41°

Toutes comprises entre 0° et 360°.

En fait, ma macro actuelle me permet de gagner facilement une journée de travail, mais j'aimerai pousser le vice plus loin et arriver a avoir un visuel de ces valeurs.

Ma question donc:
Est-il possible de mettre en place un graphique en Vba qui me placerai ces angles dans un cercle? et qui lorsque je relance ma macro avec d'autres valeurs, mon graphique ce mettrai a jours?
Avez vous des tutos sur la mise en place de ce genre de graph?

Merci d'avance, et bonne journée.
Bruno.
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
Messages postés
23317
Date d'inscription
mercredi 22 octobre 2003
Statut
Contributeur
Dernière intervention
21 novembre 2018
8 nov. 2010 à 14:27
3
Merci
Bonjour,

alors.. voila.
avec un peu de trigo... j'en suis arrivé a t'écrire ce petit bout de code :

Sub Cercle_droites()

oAngle = 60
'en radian
Pi = 4 * Atn(1)
Rad = oAngle * Pi / 180
'*--------------------------------------------------------*
'           Création du cercle
'*--------------------------------------------------------*
    'expression.AddShape(Type, Left, Top, Width, Height)
    posX = 10 'coodonnées LEFT du cercle
    posY = 10 'coodonnées TOP du cercle
    wd = 100  ' Largeur
    ht wd  ' Hauteur ( Largeur)
    
    'ajout du cercle sur la feuille
    ActiveSheet.Shapes.AddShape(msoShapeOval, posX, posY, wd, ht).Select
    
    'coordonnées du centre
        centrewd = wd / 2
        centreht = ht / 2
    'rayon du cercle
        R = ht / 2
          
   '*--------------------------------------------------------*
   '     Ajout d'une droite sur le cercle
   '*--------------------------------------------------------*
   'coordoonée du centre du cercle (et depart de la droite)
    startX = posX + centrewd
    startY = posY + centreht
    'Coordonnées du point de destination
    EndX = ((Cos(Rad) * R) + startX)
    Endy = (-(Sin(Rad) * R) + startY)
     
   'expression.AddLine(BeginX, BeginY, EndX, EndY)
    ActiveSheet.Shapes.AddLine(startX, startY, EndX, Endy).Select
    
End Sub


Je ne crois pas qu'on puisse obtenir ce genre de résultat directement avec des objets "graph" dans excel.
Je crée donc un cercle.. puis j'y trace mes droites.

Ceci n'est qu'un exemple. A toi maintenant de l'adapter à tes besoins.


Cordialement,
Jordane,
______________________________________________________
Règles du forum à lire avant de poster une question : ICI

Merci jordane45 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 91 internautes ce mois-ci

Commenter la réponse de jordane45
Messages postés
10
Date d'inscription
lundi 8 novembre 2010
Dernière intervention
16 juin 2011
8 nov. 2010 à 15:23
0
Merci
Bonjour Jordane et merci pour ta réponse rapide.

Je vais tester tout ca :)
Je te tiendrai informé si cela fonctionne!

Cordialement.
Commenter la réponse de bubub64
Messages postés
10
Date d'inscription
lundi 8 novembre 2010
Dernière intervention
16 juin 2011
9 nov. 2010 à 09:44
0
Merci
Cela fonctionne parfaitement,

Merci encore et bonne journée!
Commenter la réponse de bubub64

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.