Macro pour extraire les données d'un graphique dans Excel

Traductions disponibles Traductions disponibles
Numéro d'article: 300643 - Voir les produits auxquels s'applique cet article
Pour une version de Microsoft Excel 2000 de cet article, voir 213814.
Pour un Microsoft Excel 98 et version antérieure de cet article, consultez 137016.
Agrandir tout | Réduire tout

Sommaire

Résumé

Dans Microsoft Excel, vous pouvez extraire des données d'un graphique même lorsque les données sont dans une feuille de calcul externe ou un classeur. Ceci est utile dans les situations où le graphique a été créé à partir de, ou lié un autre fichier qui n'est pas disponible ou a été endommagé d'une certaine manière. Lorsque les données sources dans un graphique sont perdues, les données peuvent toujours être extraites le graphique proprement dit, dans un Microsoft Visual Basic pour applications macro.

Plus d'informations

Microsoft fournit des exemples de programmation pour illustration uniquement, sans garantie explicite ou implicite. Cela inclut, mais n'est pas limité aux garanties implicites de qualité marchande ou d'adéquation à un usage particulier. Cet article suppose que vous êtes familiarisé avec le langage de programmation présenté et les outils qui sont utilisés pour créer et déboguer des procédures. Les techniciens du support technique Microsoft peuvent vous expliquer les fonctionnalités d'une procédure particulière, mais ils ne sont pas modifier les exemples en vue de fournir des fonctionnalités supplémentaires ou de créer des procédures répondant à vos besoins spécifiques.

L'exemple de macro suivant place des données sources du graphique dans une feuille de calcul nommée « ChartData » dans le classeur actif, début dans la première colonne et la première ligne.
  1. Entrez le code de macro suivant dans une feuille de module :
    Sub GetChartValues()
       Dim NumberOfRows As Integer
       Dim X As Object
       Counter = 2
    
       ' Calculate the number of rows of data.
       NumberOfRows = UBound(ActiveChart.SeriesCollection(1).Values)
    
       Worksheets("ChartData").Cells(1, 1) = "X Values"
    
       ' Write x-axis values to worksheet.
       With Worksheets("ChartData")
          .Range(.Cells(2, 1), _
          .Cells(NumberOfRows + 1, 1)) = _
          Application.Transpose(ActiveChart.SeriesCollection(1).XValues)
       End With
    
       ' Loop through all series in the chart and write their values to
       ' the worksheet.
       For Each X In ActiveChart.SeriesCollection
          Worksheets("ChartData").Cells(1, Counter) = X.Name
    
          With Worksheets("ChartData")
             .Range(.Cells(2, Counter), _
             .Cells(NumberOfRows + 1, Counter)) = _
             Application.Transpose(X.Values)
          End With
    
          Counter = Counter + 1
       Next
    
    End Sub
    					
  2. Insérez une nouvelle feuille de calcul dans votre classeur et renommez-le « ChartData » (sans les guillemets).
  3. Sélectionnez le graphique à partir duquel vous souhaitez extraire les valeurs de données sous-jacentes.

    Remarque : le graphique peut soit être incorporé dans une feuille de calcul ou sur une feuille graphique distincte.
  4. Exécutez la macro GetChartValues .

    Les données du graphique sont placées dans la feuille « ChartData ».

Procédure pour lier le graphique aux données récupérées

Pour que le graphique être interactif avec les données récupérées, vous devez lier le graphique à la nouvelle feuille de données plutôt que de conserver les liens dans le classeur manquant ou endommagé.
  1. Sélectionnez le graphique, puis cliquez sur une série pour trouver le nom feuille à laquelle le graphique est lié dans le classeur endommagé ou manquant. Le nom de la feuille de calcul apparaît dans la formule série dans la barre de formule.

    Remarque : le nom de feuille peut suivre le nom de classeur, qui est placé entre crochets comme "[Book1]," et faites précéder le point d'exclamation «! » (ou apostrophe et point d'exclamation » «! ») qui indique le début d'une référence de cellule. Le nom de la feuille de calcul inclut uniquement les caractères entre le symbole crochet fermé «] » et le point d'exclamation (ou apostrophe et point d'exclamation). Laissez hors des apostrophe si elle est immédiatement avant le point d'exclamation, car une apostrophe ne peut pas être le dernier caractère dans un nom de feuille.
  2. Double-cliquez sur l'onglet de la nouvelle feuille appelée ChartData .
  3. Tapez le nom de feuille d'origine de l'étape 1 sur la mise en surbrillance "ChartData et appuyez sur ENTRÉE. Ce nom doit être le même que le nom de feuille du classeur endommagé ou manquant.
  4. Si vous n'avez pas enregistré ce fichier avec la feuille de graphique et données, enregistrez le fichier.
  5. Dans Excel 2003 ou Excel 2002, cliquez sur liaisons dans le menu Edition , puis cliquez sur Modifier la source .

    Dans Excel 2007, cliquez sur l'onglet données , cliquez sur Modifier les liaisons dans le groupe Connenctions et puis cliquez sur Modifier la source .
  6. Dans la zone fichier source , sélectionnez le lien à modifier, puis cliquez sur Modifier la source .
  7. Dans la boîte de dialogue Modifier des liens , sélectionnez le nouveau fichier avec les données récupérées et un graphique, puis cliquez sur OK .
  8. Si vous recevez le message d'erreur suivant
    Votre formule contient une référence externe non valide dans une feuille de calcul.
    Il est probable que la feuille nom que vous avez tapé dans étape 3 n'est pas le même que l'original. Revenez à l'étape 1.
  9. La zone fichier source peut maintenant être vide. Cela indique que tous les liens pointent vers le fichier actif plutôt que le fichier manquant ou endommagé. Cliquez sur Fermer .
Le graphique fait référence maintenant et interagit avec les données récupérées de la feuille renommée dans le classeur actif.

Propriétés

Numéro d'article: 300643 - Dernière mise à jour: mercredi 31 janvier 2007 - Version: 4.1
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft Office Excel 2007
  • Microsoft Office Excel 2003
  • Microsoft Excel 2002
Mots-clés : 
kbmt kbdtacode kbhowto kbprogramming KB300643 KbMtfr
Traduction automatique
IMPORTANT : Cet article est issu du système de traduction automatique mis au point par Microsoft (http://support.microsoft.com/gp/mtdetails). Un certain nombre d?articles obtenus par traduction automatique sont en effet mis à votre disposition en complément des articles traduits en langue française par des traducteurs professionnels. Cela vous permet d?avoir accès, dans votre propre langue, à l?ensemble des articles de la base de connaissances rédigés originellement en langue anglaise. Les articles traduits automatiquement ne sont pas toujours parfaits et peuvent comporter des erreurs de vocabulaire, de syntaxe ou de grammaire (probablement semblables aux erreurs que ferait une personne étrangère s?exprimant dans votre langue !). Néanmoins, mis à part ces imperfections, ces articles devraient suffire à vous orienter et à vous aider à résoudre votre problème. Microsoft s?efforce aussi continuellement de faire évoluer son système de traduction automatique.
La version anglaise de cet article est la suivante: 300643
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.

Envoyer des commentaires

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com