 
 
  |  | auteur : Bidou |  
	Il en existe vraiment plusieurs, je ne vais vous donner ici que les principales. Par interprétation de la selection. 
Ce type de création est peu souple et souvent source d'erreur.
  
 | Vba |  
Range("A1").CurrentRegion.Select
ThisWorkbook.Charts.Add
  |  
 
 
  
	Le graphique créera des abscisses par défaut. Cela veut dire aussi qu'une plage sélectionnée avant la création d'un graphique 
sera tracée à la création de celui-ci. Avec SourceData. Si votre tableau est continu avec les abcisses à gauche, 
c'est la méthode la plus rapide
  
 | Vba |  
Dim objChart As Chart, objRange As Range
    Set objRange = Worksheets("Feuil1").Range(Worksheets("Feuil1").Cells(1, 1), Worksheets("Feuil1").Cells(21, 3))
    Set objChart = ThisWorkbook.Charts.Add
    objChart.ChartType = xlXYScatter
    objChart.SetSourceData objRange, xlColumns
  |  
 
 
  
	Il existe une autre syntaxe équivalente 
  
 | Vba |  
Dim objChart As Chart, objRange As Range
    Set objRange = Worksheets("Feuil1").Range(Worksheets("Feuil1").Cells(1, 1), Worksheets("Feuil1").Cells(21, 3))
    Set objChart = ThisWorkbook.Charts.Add
    objChart.ChartType = xlXYScatter
    objChart.SeriesCollection.Add objRange, xlColumns, True, True
  |  
 
 
  
	Par manipulation de séries
  
 | Vba |  
Dim objChart As Chart, objRange As Range, MaSerie As Series, compteur As Long
    Set objRange = Worksheets("Feuil1").Range(Worksheets("Feuil1").Cells(1, 1), Worksheets("Feuil1").Cells(21, 3))
    Set objChart = ThisWorkbook.Charts.Add
    objChart.ChartType = xlXYScatter
    objChart.SeriesCollection.Add objRange, xlColumns, True, True
    For compteur = 2 To objRange.Columns.Count
        Set MaSerie = objChart.SeriesCollection.NewSeries
        MaSerie.Values = "=" & objRange.Columns(compteur).Address(True, True, xlR1C1, True)
        MaSerie.XValues = "=" & objRange.Columns(1).Address(True, True, xlR1C1, True)
    Next compteur
  |  
  |  
  |  | auteur : Bidou |  
	Il faut d'abord créer le graphique puis manipuler les séries
  
 | Vba |  
Public Sub CreationGraphe1()
    Dim MonGraphe As Chart, MaPlage As Range
    Set MaPlage = Worksheets("donnees").Range(Cells(2, 7), Cells(14, 12))
    Set MonGraphe = ThisWorkbook.Charts.Add
    MonGraphe.ChartType = xlColumnStacked100
    MonGraphe.SetSourceData MaPlage, xlColumns
With MonGraphe.SeriesCollection(5)
    .ChartType = xlXYScatterSmoothNoMarkers
    .AxisGroup = 2
     With .Border
         .Weight = xlMedium
         .LineStyle = xlAutomatic
         .ColorIndex = 4
     End With
End With
With MonGraphe
   .HasTitle = True
   With .ChartTitle
      .Characters.Text = "ANNEE 2001"
      .Shadow = True
      .Border.Weight = xlHairline
   End With
   With .Axes(xlValue, xlPrimary)
      .HasTitle = True
      .AxisTitle.Characters.Text = "Proportion"
   End With
   With .Axes(xlValue, xlSecondary)
      .HasTitle = True
      .AxisTitle.Characters.Text = "Total (hrs)"
   End With
End With
End Sub
  |  
  |  
  |  | auteur : DarkVader |  
	Il est possible de manipuler des objets Shapes sur une feuille graphique
  
 | Vba |  
ActiveChart.Shapes.AddTextbox(msoTextOrientationHorizontal, 100, 100, 100#, 100#).Select 
Selection.Characters.Text = "Le Texte"
  |  
  |  
  |  | auteur : DarkVader |  
La routine ci-dessous vous permettra de sauvegarder le graphique actif
  
 | Vba |  
Sub ExportChart()
Dim FName As String, NomGraphe As String
NomGraphe = Right(ActiveChart.Name, Len(ActiveChart.Name) - Len(ActiveSheet.Name) - 1)
With ActiveSheet.ChartObjects(NomGraphe).Chart
    FName = Application.GetSaveAsFilename("", "Fichier Gif (*.GIF),*.GIF,Fichier JPEG (*.JPG),*.JPG,Tous fichiers (*.*),*.*")
    .Export Filename:=FName, FilterName:=TypeImg, Interactive:=True
End With
End Sub
  |  
  |  
  |  | auteur : SilkyRoad |  
	Cet exemple regroupe les 4 premiers graphiques incorporés de la feuille active puis les exporte en un seule image gif.
  
 | Vba |  
Option Explicit
Private Const Fichier As String = "C:\ImageTemp.gif"
   
   
Sub ExporteGIF_GroupeGraphiques()
   Dim Sh As Shape
   Dim Tableau(1 To 4) As String
   Dim i As Integer, Nb As Integer
   
   
   If Dir(Fichier) <> "" Then Kill Fichier
   
    
    For i = 1 To 4
        Tableau(i) = ActiveSheet.ChartObjects(i).Name
    Next
    
    
    Set Sh = ActiveSheet.Shapes.Range(Tableau).Group
    
    
    Sh.CopyPicture
    
    With ActiveSheet.ChartObjects.Add(0, 0, _
                        Sh.Width, Sh.Height).Chart
        .Paste 
        
        .Export Fichier, "GIF"
    End With
    
    Nb = ActiveSheet.ChartObjects.Count
    
    ActiveSheet.ChartObjects(Nb).Delete
    
    Sh.Ungroup
End Sub
  |  
  |  
  |  | auteur : SilkyRoad |  
Sélectionnez la série dans le graphique. 
Effectuez un clic droit. 
Sélectionnez l'option Format de la série de données dans le menu contextuel. 
Sélectionnez l'onglet Motifs. 
Cochez l'option inversée si négative. 
Cliquez sur le bouton OK pour valider. 
 
  |  
  |  | auteur : SilkyRoad |  
Les évènements permettent l'interaction entre votre programme et l'utilisateur. Les évènements permettent par exemple d'intercepter les 
déplacements de la souris, la sélection d'un objet, la modification d'une donnée... 
Le lien ci dessous décrit les évènements disponibles pour manipuler les graphiques et propose quelques exemples d'utilisation.
 
Consultez le tutoriel pour 
 utiliser les évènements dans les graphiques Excel.
	
 
  |  
  |  | auteur : SilkyRoad |  
Pour créer un graphique rapidement, sélectionnez la plage de cellules servant de source de données et appuyez sur la touche F11.
  
 
  |  
  |  | auteur : SilkyRoad |  
Sélectionnez la plage de cellules contenant les données de la nouvelle série. 
Effectuez un Copier. 
Sélectionnez le graphique. 
Effectuez un Coller. 
Une nouvelle série est crée à partir des données collées.
  
 
  |  
  |  | auteur : SilkyRoad |  
Pour activer le menu Graphique, Sélectionnez un graphique dans votre classeur. 
Dans le menu Graphique, cliquez sur l'option Type de graphique. 
Sélectionnez l'option Type standard. 
Sélectionnez le type de graphique que vous souhaitez paramétrer par défaut. 
Cliquez sur le bouton Par défaut. 
Validez le message de confirmation. 
Cliquez sur le bouton OK.
  
Appliquez le même principe de procédure pour changer le graphique Type personnalisé utilisé par défaut.
  
 
  |  
  |  | auteur : SilkyRoad |  
Sélectionnez dans le graphique la série dont les valeurs va servir à appliquer l'axe secondaire. 
Effectuez un clic droit. 
Choisissez l'option "Format de la série de données" dans le menu contextuel. 
Sélectionnez l'onglet "Sélection de l'axe". 
Sélectionnez l'option "Axe secondaire". 
Cliquez sur le bouton OK pour valider.
   
 
  |  
  |  | auteur : SilkyRoad |  
Par défaut, une série est définie ainsi dans la barre de formules: 
=SERIE(;;Feuil1!$B$1:$B$7;1)
  
Il est possible de remplacer la référence d'une série par les valeurs: 
Sélectionnez la série. 
Appuyez sur la touche clavier F2 
Puis sur la touche F9.
  
Vous obtenez un résultat de type: 
=SERIE(;{1.2.3.4.5.6.7};{45.45.44.45.54.77.88};1) 
La liaison entre la source de données et le graphique est coupée.
  
 
  |  
  |  | auteur : SilkyRoad |  
Cet exemple copie le premier graphique de la feuille active dans le Presse-papiers en tant qu'image, supprime le graphique puis
colle l'image dans la feuille.
  	
 | Vba |  
Sub RemplaceGraphiqueParImage()
    With ActiveSheet
        .ChartObjects(1).CopyPicture
        .ChartObjects(1).Delete
        .Paste .Range("A1")
    End With
End Sub
  |  
 
 
  
Vous pouvez aussi créer une copie d'un graphique au format Image, sans macro: 
Appuyez sur la touche clavier Ctrl. 
Sélectionnez le graphique. 
Copiez. 
Menu Edition/Collage spécial/Image (métafichier amélioré).
  
 
  |  
  |  | auteur : SilkyRoad |  
Sans macro: 
Appuyez sur la touche Ctrl. 
Sélectionnez le graphique. 
Vous pouvez alors renommer le graphique dans le champ Nom (en haut à gauche). 
Appuyez sur la touche clavier Entrée pour valider.
 
  
Par macro: 
Cet exemple modifie le nom du 1er graphique dans la feuille active.
  
 | Vba |  
ActiveSheet.ChartObjects(1).Name = "Le nom du Graphique"
  |  
  |  
  |  | auteur : SilkyRoad |  
Pour imprimer uniquement le graphique et non la feuille complète, il suffit que celui ci soit sélectionné.
  
 
Vous pouvez aussi imprimer les graphiques incorporés par macro. 
La procédure suivante imprime le 2ème graphique contenu dans la feuille nommée "Feuil1".
  
 | Vba |  
Feuil1.chartObjects(2).Chart.printOut
  |  
  |  
 
 
  |  | auteur : SilkyRoad |  
Activez le graphique. 
Sélectionnez les étiquettes. 
Utilisez le menu Format. 
Sélectionnez l'option "Etiquettes de données sélectionnées". 
Sélectionnez l'onglet "Nombre". 
Cliquez sur la catégorie "Personnalisée". 
Saisissez [=0]"";standard dans le champ "Type". 
Cliquez sur le bouton OK pour valider.
  
 
  |  
  |  | auteur : SilkyRoad |  
Il est possible de définir dynamiquement la plage source, en fonction du nombre de données variables 
d'une colonne, afin que le graphique se redimensionne automatiquement. 
Téléchargez le classeur démo.
	
  |  
  |  | auteur : SilkyRoad |  
	Cette procédure permet de boucler sur tous les onglets du classeur et de lister les feuilles graphiques (Charts) 
ainsi que les graphiques incorporés (ChartObjects). 
  
 | Vba |   
Private Sub CommandButton1_Click()
    Dim j As Byte, i As Byte
    Dim Ch As Chart
    
    
    For Each Ch In Charts
            Debug.Print "Feuille graphique " & vbTab & Ch.Name
    Next Ch
    
    
    For j = 1 To Sheets.Count
         
        For i = 1 To Sheets(j).ChartObjects.Count
            Debug.Print "Nom: " & Sheets(j).ChartObjects(i).Name & vbTab & _
            " dans " & Sheets(j).Name
        Next i
    Next j
End Sub
  |  
  |  
  |  | auteur : SilkyRoad |  
	Cet exemple vérifie si un graphique nommé "Graphique 1" existe dans la Feuil2
  
 | Vba |    
	Dim Grph As ChartObject 
	
    On Error Resume Next 
    Set Grph = Sheets("Feuil2").ChartObjects("Graphique 1") 
    If Not Grph Is Nothing Then MsgBox "Le graphique existe"
  |  
  |  
  |  | auteur : SilkyRoad |  
	La première partie de la procédure permet de remplir deux tableaux.  
Ces tableaux sont ensuite utilisés pour alimenter les valeurs d'ordonnées et d'abscisses. 
  
 | Vba |  
Sub creationGraphiqueParTableau()
    Dim i As Byte
    Dim Tableau(1 To 10) As Integer, Tableau2(1 To 10) As Integer
    
    
    For i = 1 To 10
        Tableau(i) = i * 2
    Next i
    
    
    For i = 1 To 10
        
        
        Tableau2(i) = Int((50 * Rnd) + 1)
    Next i
    
    
    Charts.Add
    
    
    ActiveChart.Location _
    Where:=xlLocationAsObject, Name:="Feuil1"
    
    
    With ActiveChart
        .SeriesCollection.NewSeries
        .SeriesCollection(1).XValues = Tableau() 
        .SeriesCollection(1).Values = Tableau2() 
        
        .ChartType = xlLine
    End With
End Sub
  |  
 
 
  
Remarque:  
Cette méthode est limitée par le nombre de caractères que vous pourrez insérer dans la barre de formules 
(La fonction qui s'affiche lorsque vous sélectionnez une série dans le graphique)
  
Par exemple:  
=SERIE(;{0.1.2.3.4.5.6.7.8.9.10};{36.13.10.45.21.44.40.19.49.44};1) 
  
Cette limite est d'environ 450 caractères.
  
 
  |  
 
 
 
 
  |  | auteur : SilkyRoad |  
Cette procédure permet d'afficher (en pourcentage) l'évolution des valeurs d'une série en fonction du point précédent. 
  
La macro boucle sur tous les points d'une série, calcule le rapport entre 2 points et ajoute le résultat dans une 
étiquette (DataLabel). 
  
 | Vba |  
Sub afficherEvolutionPourcentage_enFonctionDuPointPrecedent()
    
    
    Dim j As Integer
    Dim X As Single, Y As Single
    Dim Resultat As String
    Dim Grph As ChartObject
    
    
    Set Grph = Feuil1.ChartObjects(1)
    
    On Error Resume Next
        
        Grph.Chart.SeriesCollection(1).DataLabels.Delete
    On Error GoTo 0
    
    
    
    Grph.Chart.SeriesCollection(1).ApplyDataLabels _
            Type:=xlDataLabelsShowValue
    
    
    For j = 2 To Grph.Chart.SeriesCollection(1).Points.Count
        
        X = Grph.Chart.SeriesCollection(1).Points(j). _
                DataLabel.Characters.Text 
        Y = Grph.Chart.SeriesCollection(1).Points(j - 1). _
                DataLabel.Characters.Text 
        
        
        
        
        
        Grph.Chart.SeriesCollection(1).Points(j - 1). _
                DataLabel.Characters.Text = Resultat
        
        
        Resultat = Format((X / Y) - 1, "0.00%")
    Next j
    
    
    Grph.Chart.SeriesCollection(1).Points(j - 1).DataLabel. _
            Characters.Text = Resultat
    
    With Grph.Chart.SeriesCollection(1).DataLabels
            .Font.ColorIndex = 5 
            .Position = xlLabelPositionAbove 
            .Orientation = xlUpward 
    End With
End Sub
  |  
 
  
	Remarques:  
La procédure ne gère pas les cellules vides (division par 0).  
Les étiquettes ne seront pas mises à jour automatiquement si les données sont modifiées dans les cellules.
  
 
  |  
  |  | auteur : SilkyRoad |  
	Cet exemple imprime le 2eme graphique de la Feuil1 :
  
 | Vba |  
Feuil1.ChartObjects(2).Chart.PrintOut
  |  
 
 
  
	Pour imprimer une feuille graphique, utilisez : 
  
 | Vba |   
Charts("Graph1").PrintOut
  |  
  |  
  |  | auteur : SilkyRoad |  
	Cette procédure évènementielle doit être placée au niveau du classeur "ThisWorkBook". 
La macro boucle les feuilles graphiques et annule le mode Couper ou Copier si l'onglet qui vient d'être désactivé 
est trouvé dans la collection.
  
 | Vba |   
Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
    Dim Ch As Chart
    
    
    For Each Ch In Charts
        If Ch.Name = Sh.Name Then Application.CutCopyMode = False
    Next Ch
End Sub
  |  
 
 
  
	Une autre possibilité, en utilisant l'évènement Deactivate du graphique :
  
 | Vba |    
Private Sub Chart_Deactivate()
   Application.CutCopyMode = False
End Sub
  |  
  |  
  |  | auteur : SilkyRoad |  
Lorsque vous utilisé un type de graphique issu de la bibliothèque personnalisée (XL8galry.xls), le nom spécifié est 
une chaîne de caractères adapté à la langue d'installation d'Excel.
  
Cet exemple crée un graphique personnalisé type logarithmique.
 
 | Vba |   
ActiveChart.ApplyCustomType ChartType:=xlBuiltIn, TypeName:= "Logarithmique"
  |  
 
 
Lorsque vous utilisez cette macro dans une version anglaise d'Excel, remplacez le 
terme "Logarithmique"  par "Logarithmic", 
sinon vous obtiendrez un message d'erreur.
 
  
La procédure suivante permet de traduire automatiquement le nom des graphiques personnalisés 
(français/anglais et anglais/français) si vous devez utiliser le classeur dans des versions différentes d'Excel.
  
 | Vba |   
Option Explicit
Sub Test()
    Dim Cible As String
    
    Cible = TraductionGraphPersoTypeName("Line - Column on 2 Axes")
    
    MsgBox Cible
    If Cible = "" Then Exit Sub
    
    ActiveChart.ApplyCustomType ChartType:=xlBuiltIn, TypeName:=Cible
 
End Sub
Function TraductionGraphPersoTypeName(strTypeName As String) As String
    Dim TabEnglish As Variant
    Dim TabFrench As Variant
    Dim TabRecherche As Variant
    Dim Verif() As String
    Dim i As Integer
    
        
        
        
        
        
            
        
    
    
    TabFrench = Array("Barres texturées", "Logarithmique", "Histogramme - Aires", _
        "Courbes à deux axes", "Courbe - Histo. 2 axes", "Courbes - Histogramme", _
        "Courbe avec lissage", "Cônes", "Pastels", "Tubes", "Secteurs éclatés", _
        "Couleurs empilées", "Histogramme en relief", "Secteurs bleus", _
        "Barres flottantes", "Courbes en couleurs", "Histogramme n&b", _
        "Courbes n&b - chrono.", "Aires n&b", "Secteurs n&b")
    
    
    TabEnglish = Array("Outdoor Bars", "Logarithmic", "Column - Area", _
        "Lines on 2 Axes", "Line - Column on 2 Axes", "Line - Column", _
        "Smooth Lines", "Cones", "Area Blocks", "Tubes", "Pie Explosion", _
        "Stack of Colors", "Columns with Depth", "Blue Pie", "Floating Bars", _
        "Colored Lines", "b&w Column", "b&w Line - Timescale", "b&w Area", _
        "b&w Pie")
    
    
    Select Case Application.International(xlCountryCode)
        
        
        Case 33: 
            
            Verif = Filter(TabFrench, strTypeName, True)
            If UBound(Verif) <> -1 Then
                TraductionGraphPersoTypeName = Verif(0)
                Exit Function
            End If
            
            
            For i = 0 To UBound(TabEnglish)
                If TabEnglish(i) = strTypeName Then
                    TraductionGraphPersoTypeName = TabFrench(i)
                    Exit Function
                End If
            Next i
        
        
        
        
        
        Case Else: 
                   
            
            
            Verif = Filter(TabEnglish, strTypeName, True)
            If UBound(Verif) <> -1 Then
                TraductionGraphPersoTypeName = Verif(0)
                Exit Function
            End If
            
            
            For i = 0 To UBound(TabFrench)
                If TabFrench(i) = strTypeName Then
                    TraductionGraphPersoTypeName = TabEnglish(i)
                    Exit Function
                End If
            Next i
    End Select
End Function
  |  
  |  
  |  | auteur : SilkyRoad |  
Il s'agit d'une option d'Excel2007 pour la gestion des axes en tant que Date: L'intervalle minimum disponible est la journée.
  
Pour y remédier, sélectionnez votre graphique. 
Sélectionnez l'onglet "Disposition" (Outils de graphique). 
Cliquez sur le bouton "Axe" dans le groupe "Axes". 
Axe horizontal principal. 
Sélectionnez Autres options de l'axe horizontal principal (en bas de la liste). 
Sélectionnez l'option Type d'axe: "Texte sur les axes". 
Vous pouvez éventuellement paramétrer les intervalles entre graduations. 
Fermez la boîte dialogue.
  
 
  |  
  |  | auteur : SilkyRoad |  
La procédure du classeur démo permet de personnaliser les labels qui s'affichent lorsque que le curseur de la souris 
passe au-dessus des points du graphique. Les labels sont créés dynamiquement et vous pouvez y afficher toutes les informations 
que vous souhaitez. Les labels suivent le curseur de la souris. 
 
Le graphique doit être préalablement activé. 
   Téléchargez le classeur.
Classeur créé avec Excel 2007.
 
  |  
  |  | auteur : SilkyRoad |  
TopLeftCell renvoie la cellule se trouvant sous le coin supérieur gauche de l'objet. 
BottomRightCell renvoie la cellule se trouvant sous le coin inférieur droit de l'objet.
  
 | Vba |  
Sub PositionGraphique()
Dim objCht As ChartObject
Set objCht = Feuil1.ChartObjects(1)
MsgBox objCht.TopLeftCell.Address & ":" & objCht.BottomRightCell.Address
End Sub
  |  
  |  
  |  | auteur : SilkyRoad |  | Vba |  
Sub RepositionneGraphique()
    Dim Emplacement As Range
    Dim Grph As ChartObject
     
    
    Set Grph = Feuil1.ChartObjects(1)
    
    Set Emplacement = Range("D3:J20")
        
    With Grph
        .Left = Emplacement.Left
        .Top = Emplacement.Top
        .Height = Emplacement.Height
        .Width = Emplacement.Width
    End With
End Sub
  |  
  |  
  |  | auteur : Arkham46 |  
Utilisez le menu Outils 
Options 
Onglet 'Général' 
Bouton 'Options Web' 
Onglet 'Images' 
Cochez 'Autoriser le format PNG comme format de sortie'.
  
Puis utilisez le menu Fichier 
Aperçu de la page Web. 
Le fichier PNG apparaît sur la page Web.
  
Ou
  
Menu Fichier 
Enregistrer en tant que page Web. 
Le fichier PNG est récupérable dans le répertoire de la page Web sauvegardée.
  
 
  |  
  |  | auteur : SilkyRoad |  
Sélectionnez la forme qui contient le titre du graphique. 
Dans la barre de formule, saisissez la référence de la cellule à lier. 
=Feuil1!$A$1 
Validez la formule. 
Désormais la cellule A1 s'affiche dans le titre du graphique.
  
 
  |  
  |  | auteur : SilkyRoad |  
Une première solution consiste à saisir la valeur #N/A dans les cellules vides de la plage source.
 
  
Une deuxième possibilité:
  
Sélectionnez le graphique  
Cliquez sur le menu Outils 
Options  
Sélectionnez l'onglet Graphique 
Modifiez l'option de gestion des cellules vides.
  
Si vous disposez d'Excel2007: 
Sélectionnez le graphique. 
Onglet "Création". 
Groupe "Données". 
Cliquez sur le bouton "Sélectionner des données". 
Une boîte de dialogue s'affiche. 
Cliquez sur le bouton "Cellules masquées et cellules vides". 
Cochez l'option "Relier les points de données par une courbe. 
Cliquez sur le bouton OK pour valider.
  
 
  |  
  |  | auteur : SilkyRoad |  
Sélectionnez le graphique. 
Onglet "Création" dans le ruban. 
Groupe "Données". 
Cliquez sur le bouton "Sélectionner les données". 
Sélectionnez la série dans la liste de gauche et cliquez sur les boutons (symbolisés pas des flèches verticales bleues) 
pour déplacer vers le bas ou vers le haut. 
Cliquez sur le bouton OK pour valider.
  
 
  |  
  |  | auteur : SilkyRoad |  
Lorsque vous souhaitez définir une charte ou une mise en forme personnalisée adaptée à vos projets, 
Excel2007 permet la sauvegarde du graphique en tant que modèle afin de le réutiliser facilement ultérieurement.
 
Tout d'abord, finalisez la présentation de votre graphique. 
Ensuite, sélectionnez le graphique. 
Sélectionnez l'onglet Création (Outils de graphique) dans le ruban. 
Cliquez sur le bouton "Enregistrer comme modèle" dans le groupe "Type". 
Attribuez un nom au fichier. Celui-ci va prendre l'extension  .crtx. Le modèle est sauvegardé par défaut dans le répertoire:
 C:\Documents and Settings\nom_utilisateur\Application Data\Microsoft\Templates\Charts
Ensuite, lorsque vous créez un nouveau graphique, ouvrez le répertoire "Modèles" et sélectionnez votre modèle personnel.
  
Ce modèle peut aussi servir à modifier un graphique existant. Vous pouvez le déployer et l'utiliser sur 
d'autres postes de travail en copiant le fichier  .crtx. 
Si vous utilisez souvent un modèle de graphique, vous pouvez aussi l'enregistrer en tant que modèle par défaut.
	
 
  |  
  |  | auteur : SilkyRoad |  
Cette fonctionnalité n'est plus disponible dans les nouveaux graphiques Excel 2007. 
Vous ne pouvez donc plus utiliser cette option pour ajouter de nouvelles données. 
De même, vous ne pouvez plus modifier la valeur d'un point en faisant un simple "glisser" de ce point dans le graphique, 
comme cela était le cas dans les anciennes versions.
  
 
  |  
  |  | auteur : SilkyRoad |  
Vous pouvez utiliser un format personnalisé pour masquer les étiquettes dont la valeur est à 0.
 
Dans Excel2007: 
Sélectionnez le graphique, puis effectuez un clic droit. 
Choisissez l'option "Mise en forme des étiquettes de données" dans le menu contextuel. 
Sélectionnez le menu "Nombre". 
Sélectionnez la catégorie "Personnalisé". 
Choisissez un des codes existants dans la liste  comme point de départ, et adaptez le format en fonction de votre projet.
 # ###;-# ###;;
Cliquez sur le bouton "Ajouter".
 Reportez vous au chapitre sur les formats pour plus d'information.
  |  
  |  | auteur : SilkyRoad |  
	Lorsque la série à effacer fait référence à un plage vide, il peut arriver que vous ayez une message 
d'erreur:  "Erreur d'exécution '1004' La méthode Delete de la classe Series a échoué". 
  
Pour éviter ce soucis, utilisez le menu Options  
Onglet Graphique  
Dans la zone "traitement des cellules vides", l'option "Valeurs zéro" doit  être  activée .
 
  
 
La modification de l'option "Valeurs zéro" peut aussi être réalisée directement dans votre code:
  
 | Vba |   
Sub SuppressionToutesSeries()
    Dim W As Worksheet
    Dim NBSeries As Integer, I As Integer
    
    
    Set W = ThisWorkbook.Worksheets(1)
    W.ChartObjects(1).Activate
    
NBSeries = ActiveChart.SeriesCollection.Count
    
ActiveChart.DisplayBlanksAs = xlZero
    
        
        
        
    
    For I = NBSeries To 1 Step -1
        ActiveChart.SeriesCollection(I).Delete
    Next I
 
    
    
    ActiveChart.DisplayBlanksAs = xlNotPlotted
End Sub
  |  
  |  
 
 
 
						Consultez les autres F.A.Q's
					 
 Les sources présentés sur cette pages sont libre de droits,
			et vous pouvez les utiliser à votre convenance. Par contre cette page de présentation de ces sources constitue une oeuvre intellectuelle protégée par les droits d'auteurs.
			Copyright ©2008 
			Developpez LLC. Tout droits réservés Developpez LLC.
			Aucune reproduction, même partielle, ne peut être faite de ce site et de
			l'ensemble de son contenu : textes, documents et images sans l'autorisation
			expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à 3 ans
			de prison et jusqu'à 300 000 E de dommages et intérets.
			Cette page est déposée à la SACD. 
												 |