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 :

Copie image powerpoint à coller dans Excel [XL-2013]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Femme Profil pro
    Chargé d'affaire
    Inscrit en
    Octobre 2018
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2018
    Messages : 3
    Par défaut Copie image powerpoint à coller dans Excel
    Bonjour,

    Je travaille actuellement sur un fichier qui regroupera plusieurs images afin de pouvoir venir piocher dedans pour des présentations.
    Le fichier de travail est un fichier EXCEL.
    Certains tableaux/graph dont j'ai besoin sont dispo sur un powerpoint, par conséquent j'ai actuellement le code suivant

    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
    Sub MAJ_graph_TTA()
     
    '*********************************************
    'Ouverture de POWERPOINT
    '*********************************************
     
    Dim PPT As PowerPoint.Application
    Dim PptDoc As PowerPoint.Presentation
    Dim NbShpe As Byte
     
    Set PPT = CreateObject("Powerpoint.Application") 'creation session PowerPoint
    PPT.Visible = True 'l'application sera visible
    Set PptDoc = PPT.Presentations.Open("lien vers fichier ppt")
     
    [C'est à partir d'ici que çe ne va plus ^^]
    '***************************************************
    ' Copie des images du fichier powerpoint dans fichier de travail excel
    '***************************************************
     
    'je veux aller dans la slide n°201 du powerpoint, y sélectionner la seule image présente et aller la copier dans mon fichier excel
     
    For Each Image In ActivePresentation.Slides(201)
    Shapes.Select
    Windows("Macro_transfert.xlsm").Activate
    Sheets("feuil1").Select
    Range("A1").Select
    ActiveSheet.Pictures.Paste.Select
     
    End sub
    Je vous remercie d'avance pour votre précieuse aide! (vous m'avez déjà permis de bien apprendre VBA, mais je bloque encore sur la logique des codes)

    Margot

  2. #2
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    perso j'ai jamais utiliser excel pour powerpoint en lecture ou ecriture mais il y a quelque chose d'ilogique dans ton code et de manquant aussi
    tu boucle sur une variable image dans la collextion slides sans preciser quel types d'elements tu veux
    apres tu selectionne le shape on c'est pas c'est qui celui la
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    For Each Image In ActivePresentation.Slides(201)'ici image est une variable qui peut tres bien representer des poiles a frire 
     Shapes.Select 'qui c'est celui la ???????
     Windows("Macro_transfert.xlsm").Activate
     Sheets("feuil1").Select
     Range("A1").Select
     ActiveSheet.Pictures.Paste.Select
    'ne faudrait il  pas réactiver la fenetre de powerpoint ici ?????
     End sub
    comme je ne connais pas mais si je devais suivre un raisonnement logique je ferais un truc du genre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    For Each Image In ActivePresentation.Slides(201).pictures
     image.copy
     Windows("Macro_transfert.xlsm").Activate
     Sheets("feuil1").Select
     Range("A1").Select
     ActiveSheet.Pictures.Paste.Select
     End sub
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  3. #3
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 903
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 903
    Billets dans le blog
    36
    Par défaut
    Bonjour,

    Désolé de te décevoir Patrick, mais il n'y a pas d'objet Picture dans PowerPoint. D'autre part, récupérer une shape (image, forme, graphique, objet OLE…) dans une diapositive n'est vraiment pas le point fort de VBA PowerPoint. Parce que PowerPoint assigne un numéro à l'image et le concatène automatiquement à Picture, pour avoir le nom de l'image.

    Et puis, promener des images entre Excel et d'autres applications Office par le presse-papiers est parfois catastrophique…


    Voici tout ce qui peut être une shape dans PowerPoint


    Théoriquement en bouclant sur la collection shapes de la diapositive, on pourrait obtenir le type de l'objet shape et récupérer les msopicture. Mais, je n'ai jamais essayé.

  4. #4
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    Bonjour clement
    oui c'est bien pour ca que j'ai bien precisé que je connaissait pas mais ce qui est sur c'est que son code de base ne pourrait en aucun cas fonctionner ne serait ce que par ce qu'il ne copie pas deja
    dont si je te comprends
    c'est for each shap in object.slides(201).shapes
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  5. #5
    Membre à l'essai
    Femme Profil pro
    Chargé d'affaire
    Inscrit en
    Octobre 2018
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2018
    Messages : 3
    Par défaut J'aurais tenté
    Je vous remercie pour votre aide.
    Je sentais bien que je demandais à VBA qqc qu'il ne gère pas super bien... mais rien n'est perdu je vais trouver une autre méthode !

  6. #6
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 903
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 903
    Billets dans le blog
    36
    Par défaut
    Citation Envoyé par patricktoulon Voir le message
    Bonjour clement
    dont si je te comprends
    c'est for each shap in object.slides(201).shapes
    Probablement. Comparé à Word, et encore plus à PowerPoint, VBA Excel est presque facile. Je me demande ce que c'est avec Publisher.

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

Discussions similaires

  1. vba : coller image de userform dans excel
    Par Fulli dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 30/07/2010, 09h50
  2. Copie images de WORD dans PowerPoint en VBA (Office 2003 et VB6)
    Par Jacques13170 dans le forum VBA PowerPoint
    Réponses: 3
    Dernier message: 10/03/2009, 06h47
  3. Coordonnés image en pixels dans Excel
    Par House MD dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 06/08/2008, 10h13
  4. Coordonnées image en pixels dans Excel
    Par ucfoutu dans le forum Contribuez
    Réponses: 0
    Dernier message: 19/06/2008, 08h29
  5. Copie du design Access dans Excel
    Par guibertg dans le forum IHM
    Réponses: 1
    Dernier message: 22/04/2008, 09h58

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