Accueil > > > EXEMPLE D'AFFICHAGE D'UN GRAPHIQUE, DANS UN USERFORM, POUR VBA EXCEL
EXEMPLE D'AFFICHAGE D'UN GRAPHIQUE, DANS UN USERFORM, POUR VBA EXCEL
Information sur la source
Description
Langage : VBA, pour Excel Ce n’est pas un code de fou, c’est tout simplement une solution pour faire une sorte d’aperçu d’un graphique, placé dans un UserForm. Il me semble que plusieurs questions ont été posé, dans le forum, concernant l’affichage de graphiques, et peu de monde avait une solution. Voilà, si ça peut aider quelqu’un ! Bonne prog à tous. Mortalino.
Source
- Tout d’abord, il faut créer un bouton (sur la feuille) que j’ai nommé « cbtAfficheGraphique »:
-
- Private Sub cbtAfficheGraphique_Click()
-
- ' active la feuille contenant le graphique (c’est fou, la feuille s’appelle … ben
- ' « Graphique »
- Sheets("Graphique").Select
-
- ' référencé l'objet CurrentChart, là dans l'exemple, c'est le 2ème graphique (j’en ai plusieurs)
- ' 'ChartObjects(2)'
- Set CurrentChart = Sheets("Graphique").ChartObjects(2).Chart
-
- ' active le graphique (qui s’appelle "Graphique 3")
- Sheets("Graphique").ChartObjects("Graphique 3").Activate
- ActiveChart.ChartArea.Select
-
- ' j’ai placé le titre dans la cellule D7 (pour divers besoins) donc le titre est récupéré
- ' comme cela, sinon vous pouvez mettre le titre directement sur le graphique (me
- ' concernant, j’ai un calcul de rafraichissement du mois précédant, imbriqué dans le
- ' titre, d’où le placement de celui-ci dans une cellule)
- ActiveChart.ChartTitle.Text = Range("D7").Value
- ActiveChart.ShowWindow = True
-
- ' attribution d’un nom pour l’export du graphique, dans le dossier courant du fichier
- Fname = ThisWorkbook.Path & "\temp2.gif"
- CurrentChart.Export Filename:=Fname, FilterName:="GIF"
-
- ' ensuite bah j’ai créé un UserForm (frmGraphique) avec juste une image (vierge, qui
- ' s’appelle Image1), qui charge donc l’image venant d’être enregistré.
- frmGraphique.Image1.Picture = LoadPicture(Fname)
-
- ' puis affichage du graphique
- frmGraphique.Show
-
- End Sub
-
- ___________________________________________________________________________________
-
- Voici une 2ème solution très simple, qui permet en fait de placer le graphique
- (s'il se situe sur la même feuille) dans un "Aperçu".
-
- Code à placer dans un bouton, par exemple :
-
- ActiveSheet.ChartObjects("Graphique 1").Activate
- With ActiveChart
- .PlotArea.Select
- .ShowWindow = True
- End With
-
- J'ai essayé en remplaçant ActiveSheet par Sheets(1) par exemple, c'est pour le cas
- où le graphique est appelé par un bouton d'une autre feuille.
- Ca fonctionne mais si je rajoute une ligne supplémentaire pour revenir à la feuille
- initiale, la fenêtre graphique se ferme aussi sec..
-
- Voilà !
Tout d’abord, il faut créer un bouton (sur la feuille) que j’ai nommé « cbtAfficheGraphique »:
Private Sub cbtAfficheGraphique_Click()
' active la feuille contenant le graphique (c’est fou, la feuille s’appelle … ben
' « Graphique »
Sheets("Graphique").Select
' référencé l'objet CurrentChart, là dans l'exemple, c'est le 2ème graphique (j’en ai plusieurs)
' 'ChartObjects(2)'
Set CurrentChart = Sheets("Graphique").ChartObjects(2).Chart
' active le graphique (qui s’appelle "Graphique 3")
Sheets("Graphique").ChartObjects("Graphique 3").Activate
ActiveChart.ChartArea.Select
' j’ai placé le titre dans la cellule D7 (pour divers besoins) donc le titre est récupéré
' comme cela, sinon vous pouvez mettre le titre directement sur le graphique (me
' concernant, j’ai un calcul de rafraichissement du mois précédant, imbriqué dans le
' titre, d’où le placement de celui-ci dans une cellule)
ActiveChart.ChartTitle.Text = Range("D7").Value
ActiveChart.ShowWindow = True
' attribution d’un nom pour l’export du graphique, dans le dossier courant du fichier
Fname = ThisWorkbook.Path & "\temp2.gif"
CurrentChart.Export Filename:=Fname, FilterName:="GIF"
' ensuite bah j’ai créé un UserForm (frmGraphique) avec juste une image (vierge, qui
' s’appelle Image1), qui charge donc l’image venant d’être enregistré.
frmGraphique.Image1.Picture = LoadPicture(Fname)
' puis affichage du graphique
frmGraphique.Show
End Sub
___________________________________________________________________________________
Voici une 2ème solution très simple, qui permet en fait de placer le graphique
(s'il se situe sur la même feuille) dans un "Aperçu".
Code à placer dans un bouton, par exemple :
ActiveSheet.ChartObjects("Graphique 1").Activate
With ActiveChart
.PlotArea.Select
.ShowWindow = True
End With
J'ai essayé en remplaçant ActiveSheet par Sheets(1) par exemple, c'est pour le cas
où le graphique est appelé par un bouton d'une autre feuille.
Ca fonctionne mais si je rajoute une ligne supplémentaire pour revenir à la feuille
initiale, la fenêtre graphique se ferme aussi sec..
Voilà !
Historique
- 25 mai 2006 07:38:39 :
- 2 ème méthode rajoutée (5 lignes)
Sources du même auteur
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
Aide VBA Excel userform .... Urgent .. [ par Metos ]
Bon voila je cree un useform . je recupere les données de noms de clients etc.. dans une liste. Par la suite je voudrais que lorsque j enregistre les
Résolution d'ecran sur Excel et VBA [ par Quecks ]
Slt,je crée des userform avec une résolution 800*600 mais lorsque je les envoie à ceux qui travail avec une résolution 1024*768, les userform ne couvr
SOS Vba excel :placer un graphique à un endroit précis d'une feuille [ par zitor ]
SOS Vba excel :placer un graphique à un endroit précis d'une feuille !Je ne sais pas du tout comment faire ! HELP please ?!Zitor
VBA EXCEL: Données X et Y pour un graphique [ par Petitgus ]
Salut !Je cherche à insérer ds un graphique (nuage de pts) des séries directement à partir des valeurs contenues dans des variables (vecteurs ou matri
graphique dans excel avec vba ??? [ par cyberlulu ]
Salut !Je travaille sur excel. J'ai ajouté un graph sur une nouvelle feuille. Sur la feuille 1, j'ai mis un bouton pour passer sur la feuille graph1 :
Code VBA [ par bubuf ]
Bonjour à tous,Après avoir créer une Userform dans EXCEL,Comment ajouter ce controle "USERFORM" sur l'emplacement précis d'une cellule ( par ex : rang
Graphique sous excel [ par fisheye510 ]
salutJ'ai un petit probléme avec les graphiques sous excel, j'ai réalisé une interface sous VBA qui permet de créer des graphiquesa partir de données
graphique excel & vba [ par grunnico ]
Bonjour,je cree des graphiques excel avec vb en ajoutant des nouvelles series, puis je defini un ens de donnees et je l'affecte a ma serie. Le problem
Excel et VBA [ par buz5 ]
Bonjour, je travaille sur VBA et excel et j'aimerez inserrer un sous formulaire (comme dans access) dans un userform et pouvoir saisir plusieurs ligne
UserForm Excel vba [ par popysan ]
Bonjour,J'utilise un UserForm appelé à partir d'un fichier excel et j'aimerai que celui-ci affiche les dernières saisies à chaque réouverture mais il
|
Derniers Blogs
ASYNC/AWAIT: COMPRENDRE COMMENT CA MARCHEASYNC/AWAIT: COMPRENDRE COMMENT CA MARCHE par fathi
Tout le monde est unanime pour dire que la programmation multi-thread et asynchrone est en train de devenir un sujet incontournable. Beaucoup de choses sont arrivées avec le framework 4 pour le code parallèle (TPL, PLinq,.) et bientôt, on va avoir l...
Cliquez pour lire la suite de l'article par fathi PAS D'INTELLITRACE SUR MON SITE WEB DANS IIS !PAS D'INTELLITRACE SUR MON SITE WEB DANS IIS ! par Etienne Margraff
J'ai récemment eu un problème pour obtenir l'intelliTrace sur un site web dans IIS. Il n'y avait pas de message d'erreur, rien dans le journal d'évènement Windows, et après 3 appels à une voyante, 2 visites chez un marabou, j'ai failli me résign...
Cliquez pour lire la suite de l'article par Etienne Margraff OFFICE 365 - SHAREPOINT ONLINE, QUELQUES LIMITATIONSOFFICE 365 - SHAREPOINT ONLINE, QUELQUES LIMITATIONS par junarnoalg
De nombreuses entreprises font le choix de SharePoint Online, service fourni au travers de l'offre de Microsoft Office 365. S'il est vrai que ce choix apporte un grand nombre d'avantages; rapidité de mise en ½uvre, disponibilité, large couvertu...
Cliquez pour lire la suite de l'article par junarnoalg PRéSENTATION DES API REST DE WINDOWS AZURE : LISTER LES COMPTES DE STORAGEPRéSENTATION DES API REST DE WINDOWS AZURE : LISTER LES COMPTES DE STORAGE par richardc
http://www.c2idotnet.com/articles/presentation-des-api-rest-de-windows-azure-lister-les-comptes-de-storage
Désolé pour "toto", mais c2i existait avant blogs.developpeur.org et c'est mon site "officiel" ;-) ...
Cliquez pour lire la suite de l'article par richardc
Logiciels
DocTranslate (V3.1.0.0)DOCTRANSLATE (V3.1.0.0)DocTranslate est un traducteur de document Microsoft Word, PowerPoint et Excel. Il permet d'autom... Cliquez pour télécharger DocTranslate Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System
|