IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Word Discussion :

Importation d'un graphique Excel dans Word par appel de macro VBA dans WORD [WD-2010]


Sujet :

VBA Word

  1. #1
    Candidat au Club
    Homme Profil pro
    Rédacteur technique
    Inscrit en
    Avril 2019
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Rédacteur technique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2019
    Messages : 3
    Points : 3
    Points
    3
    Par défaut Importation d'un graphique Excel dans Word par appel de macro VBA dans WORD
    Bonjour,

    Je cherche à programmer l'importation dans un document WORD (par macro VBA) un graphique se trouvant dans un fichier Excel.

    Quelqu'un sait-il comment faire ?
    Merci.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par MichelHallé Voir le message
    Bonjour,

    Un code à adapter :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
     
    Option Explicit
     
    Sub CopieGrapheExcelDepuisWord()
     
    Dim I As Integer
    Dim MonChemin As String
    Dim DocEncours As Document
     
    Dim AppExcel As Object, FicExcel As Object
     
        On Error GoTo Fin
     
        Set DocEncours = ActiveDocument
     
          MonChemin = "C:\Users\...\Xxxxx.xlsm"
     
         Set AppExcel = CreateObject("Excel.Application")
         With AppExcel
     
              .Visible = True
              Set FicExcel = .Workbooks.Open(MonChemin)
              FicExcel.Sheets("Données").ChartObjects("Graphique 2").Copy
     
              With DocEncours
                   'Cherche le signet nommé Signet1
                   Selection.GoTo What:=-1, Name:="Signet1"
                   DoEvents
                   'Colle le graphe dans le signet
                   Selection.PasteSpecial , Link:=False
                   DoEvents
              End With
     
              FicExcel.Close savechanges:=False
     
        End With
     
        MsgBox "Import graphe terminé !", vbInformation
     
        GoTo Fin
     
    Fin:
     
        Set FicExcel = Nothing
        AppExcel.Quit
        Set AppExcel = Nothing
     
        Set DocEncours = Nothing
     
    End Sub

  3. #3
    Candidat au Club
    Homme Profil pro
    Rédacteur technique
    Inscrit en
    Avril 2019
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Rédacteur technique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2019
    Messages : 3
    Points : 3
    Points
    3
    Par défaut Importation graphe Excel dans WORD
    ok merci, ça marche ,
    mais la figure inclut des titres et légendes dont la taille de police est augmentée et n'apparaissent plus que partiellement.
    Peut-on ajouter une commande pour conserver intégralement le format et règler la taille de la figure ? Merci.

    Michel

  4. #4
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par MichelHallé Voir le message
    Je pense qu'au lieu de copier le graphe directement, il faudrait copier son image dans Excel.

  5. #5
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par MichelHallé Voir le message
    Modifiez cette partie de code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
         Set AppExcel = CreateObject("Excel.Application")
         With AppExcel
     
              .Visible = True
              Set FicExcel = .Workbooks.Open(MonChemin)
              With FicExcel.Sheets("Données")
                  .ChartObjects("Graphique 2").Copy
                  .PasteSpecial Format:="Image (JPEG)", Link:=False, DisplayAsIcon:=False
                  AppExcel.Selection.Copy
          End With
    Le fichier Excel étant fermé sans sauvegarde, l'image générée sera perdue.

  6. #6
    Candidat au Club
    Homme Profil pro
    Rédacteur technique
    Inscrit en
    Avril 2019
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Rédacteur technique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2019
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    OK ça marche très bien sans attributs de PasteSpecial :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
            ...
              Set FicExcel = .Workbooks.Open(MonChemin)
               With FicExcel.Sheets("Données")
                   .ChartObjects(3).Copy
                   .PasteSpecial
                   AppExcel.Selection.Copy
               End With
          ...
    L'image est ainsi très bien reproduite, bien nette et précise.
    Merci.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Importer un graphique Excel dans un formulaire access
    Par pianoman94380 dans le forum VBA Access
    Réponses: 2
    Dernier message: 08/04/2013, 12h04
  2. [XL-2010] Importation de graphique Excel vers Word (V10)
    Par Hilite dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 03/01/2013, 12h48
  3. [WD-2007] Graphique excel dans word : casser liaison?
    Par chef900 dans le forum Word
    Réponses: 3
    Dernier message: 05/01/2011, 15h03
  4. Inserer un graphique excel dans word
    Par Tibaldus dans le forum VBA Word
    Réponses: 1
    Dernier message: 21/09/2007, 10h49
  5. [VBA-E]Insertion graphique Excel dans Word
    Par sat478 dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 19/04/2006, 14h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo