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

Macros et VBA Excel Discussion :

copier un graph dans une zone


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Femme Profil pro
    Dut geii Nimes
    Inscrit en
    Mars 2015
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 29
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Dut geii Nimes
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2015
    Messages : 73
    Par défaut copier un graph dans une zone
    Bonjour,

    alors voila j'ai écris un code qui me permet d'ouvrir un fichier de copier un graphique et de le coller dans une autre feuille.

    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
     
     
    Sub Macro1()
    '
    Fichier_LIBERATION_PF = "Libération PF.xlsm"
     
    Chemin_LIBE = "T:\DIRECTIONCQ\PLANIF CQ\PLANNING CQ PHARMA 2019"
     
     
    Application.Workbooks.Open Filename:=Chemin_LIBE & "\" & Fichier_LIBERATION_PF, ReadOnly:=True
     
        Workbooks(Fichier_LIBERATION_PF).Worksheets("Graphs").Activate
     
        ActiveSheet.Shapes.Range(Array("Graphique 2", "Graphique 2")).Select
        Application.CutCopyMode = False
        Selection.Copy
        ThisWorkbook.Worksheets("Feuil3").Activate
        Range("A1").Select
        ActiveSheet.Paste
     
    End Sub

    Savez-vous si c'est possible de le copier et de le coller dans une zone précise car j'aimerai imprimer ensuite la feuille.

    En faite je veux créer une sorte de tableau de bord, avec un bouton impression, quand je clique sur ce bouton
    je veux copier tous les graphs en provenance d'autres les fichiers, les coller et ensuite les imprimer automatiquement sans avoir a refaire la mise en page

    Je vous ai mis ce que j'ai écris pour le moment pour que vous puissez voir ou j'en suis

    Avez vous des pistes des tuto qui peuvent m'aider peut être ?

    Merci pour votre aide

  2. #2
    Expert confirmé
    Homme Profil pro
    retraité
    Inscrit en
    Juin 2012
    Messages
    3 432
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : retraité
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Juin 2012
    Messages : 3 432
    Par défaut
    Bonjour,

    Une piste.
    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
    Option Explicit
     
    Private Sub btnPrintGraph()
       PoserImage "Libération PF.xlsm", "Graphique 1"
       PoserImage "Libération PF.xlsm", "Graphique 2"
       PoserImage "Libération PF.xlsm", "Graphique 3"
    End Sub
     
    Private Sub PoserImage(sFichier As String, sGraph As String)
       Dim sChemin As String
       ActiveSheet.Shapes(1).Delete     '--- il faut effacer l'image précédente
       sChemin = "T:\DIRECTIONCQ\PLANIF CQ\PLANNING CQ PHARMA 2019"
       Application.Workbooks.Open FileName:=sChemin & "\" & sFichier, ReadOnly:=True
       Workbooks(sFichier).Worksheets("Graphs").Activate
       ActiveSheet.Shapes.Range(Array(sGraph, sGraph)).Select
       Application.CutCopyMode = False
       Selection.Copy
       ThisWorkbook.Worksheets("Feuil3").Activate
       Range("A1").Select
       ActiveSheet.Paste
       With Selection.ShapeRange
          .Top = 1
          .Left = 1
          .Width = 400
          .Height = 200
       End With
       ActiveSheet.PrintOut Preview:=True  '--- aperçu avant impression
    End Sub
    Bonne continuation.

  3. #3
    Expert confirmé
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Billets dans le blog
    7
    Par défaut
    Salut,

    A mon sens, afin d'éviter toute liaison intempestive, mieux vaut copier ces graphiques en image. (Méthode CopyPicture).

Discussions similaires

  1. [WD15] Champs Graphe dans une Zone Répétée
    Par Grmmml dans le forum WinDev
    Réponses: 4
    Dernier message: 15/04/2010, 10h12
  2. [Toutes versions] Copier/Coller dans une zone filtrée
    Par damsmut dans le forum Excel
    Réponses: 3
    Dernier message: 14/12/2009, 13h37
  3. Réponses: 5
    Dernier message: 18/11/2009, 11h25
  4. Réponses: 3
    Dernier message: 26/04/2008, 17h58
  5. comment empêcher le copier/coller dans une zone de texte
    Par hanafimohammed dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 22/05/2007, 20h57

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