Graphiques

vbalolo Messages postés 13 Date d'inscription dimanche 1 mai 2005 Statut Membre Dernière intervention 19 janvier 2006 - 24 nov. 2005 à 12:20
vbalolo Messages postés 13 Date d'inscription dimanche 1 mai 2005 Statut Membre Dernière intervention 19 janvier 2006 - 24 nov. 2005 à 16:54
Bonjour,
Je travaille sur un projet en Excell + VBA. Est il possible 1 ) de rajouter sur une userform un graphique créé dans excell.
2) de voir en modifiant un paramètre sur l'userform (variable contenue dans une textBox par exemple), "in live" le nouveau graphique.

Exemple :

Une Userform contient un graphique Y = A X + B
Les valeurs A et B sont des texbox situées dans l'Userform et peuvent être modifiées à souhait, la nouvelle courbe apparait.

Si ceci est possible, merci de me donner le plus d'infos possibles : quels sont les contrôles utilisés, où peut on les trouver ? codes disponibles ?

Merci d'avance pour votre aide.

Lolo

2 réponses

jpleroisse Messages postés 1788 Date d'inscription mardi 7 novembre 2000 Statut Membre Dernière intervention 11 mars 2006 27
24 nov. 2005 à 16:29
Bonjour,

Réponse 1

Dans cet exemple j'ai rempli la colonne A de A1 à A7(Jan,Févr,Mars,
etc...jusque Juillet en abrégé), dans la colonne B, j'ai mis des
chiffres de B1 à B7(125,542,145, etc....)

Tu places un contrôle MSChart (Contrôles supplémentaires Microsoft Chart 6.0(SP45)(OLEDB) et un CommandButton.



Private Sub CommandButton1_Click()

Dim arrData(0 To 6, 1 To 2)

Dim i As Integer

For i = 0 To 6

' Les valeurs de la colonne A remplissent la première

' série du tableau. Si ces valeurs sont des chaînes,

' elles deviennent des étiquettes de lignes.

Dim arrValues(1 To 6, 1 To 3)

arrData(i, 1) = Worksheets(1) _

.Range("A" & i + 1).Value



' Les valeurs de la colonne B remplissent ensuite la seconde série.

arrData(i, 2) = Worksheets(1) _

.Range("B" & i + 1).Value

Next i

MSChart1.SeriesType = VtChSeriesType2dArea

MSChart1.ChartType = VtChChartType2dBar

MSChart1.ChartData = arrData

End Sub



Si tu veux mettre plus de données (par exemple les 12 mois de l'années
dans la colonne A), tu mets Dim ArrDta(0 to 11, 1 to 2) et
For i = 0 to 11 pour la colonne B



Pour ta 2ème question, je vais faire des essais.



jpleroisse



Si une réponse vous convient, cliquez Réponse Acceptée.
0
vbalolo Messages postés 13 Date d'inscription dimanche 1 mai 2005 Statut Membre Dernière intervention 19 janvier 2006
24 nov. 2005 à 16:54
Re bonjour et merci pour ce début de réponse.
Entre temps, j'ai essayé de me documenter sur les graphiques et j'ai effectivement remarqué qu'il me fallait un contrôle "Chart". Malheureusement et aussi curieux que celà puisse paraître, je ne trouve pas ce contrôle supplémentaire dans la liste. Je crois qu'il est possible d'en ajouter. Pouvez vous me dire où me le procurer et la façon de l'insérer (de mémoire je crois qu'il suffit de le copier dans le bon répertoire, mais lequel (intuitivement, je le mettrai dans celui où sont les autres contrôles c'est à dire : c:\\windows\system32)


encore merci pour votre aide

Lolo
0
Rejoignez-nous