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 :

Exporter depuis Excel vers PPT [XL-2010]


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2013
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 28
    Points : 11
    Points
    11
    Par défaut Exporter depuis Excel vers PPT
    Bonjour à tous,

    Je suis en train de faire une macro qui doit me permettre d'exporter des graphiques depuis Excel vers PPT.

    J'arrive à copier/coller les graphiques (je fais des pastes special jpeg).

    Ensuite j'aimerais utiliser des macros de retaille/repositionnement des images. Malheureusement, je n'arrive pas a adapter ces macros qui ont été écrites sous PPT et qui (si j'ai bien compris) ont été crées pour être utilisées sur un seul slide.

    Voici la macro d'origine :

    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
    Sub FourGraphsMatrix()
    Dim osld As Slide
    Dim oshp As Shape
    Dim x As Integer
    Dim y As Integer
     
    For Each osld In ActivePresentation.Slides
    If osld.SlideIndex > 1 Then Exit Sub
    For Each oshp In osld.Shapes
    If CheckIsPic(oshp) = True Then
    With oshp
    .LockAspectRatio = msoFalse
    .Width = 315
    .Height = 200
    .Top = 90 + y * 205
    .Left = 25 + x * 350
    .Select Replace:=False 'Select picture but keep any others selected
    End With
    x = x + 1
    If x = 2 Then
    y = y + 1
    x = 0
    End If
    End If
    Next oshp
    Next osld
    End Sub

    Voici l'adaptation que j'ai faite :

    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
    Sub FourGraphsMatrix(Prez)
     
     
        Dim osld As Slide
        Dim oshp As Shape
        Dim x As Integer
        Dim y As Integer
     
     
        For Each osld In Prez.Slides
     
            For Each oshp In osld.Shapes
     
                    If CheckIsPic(oshp) = True Then
                        With oshp
                            .LockAspectRatio = msoFalse
                            .Width = 315
                            .Height = 200
                            .Top = 90 + y * 205
                            .Left = 25 + x * 350
                            .Select Replace:=False 'Select picture but keep any others selected
                        End With
     
                        x = x + 1
     
                        If x = 2 Then
                            y = y + 1
                            x = 0
                        End If
                    End If
            Next oshp
        Next osld
    End Sub
    Où Prez est la présentation ppt qui contient mes images.

    L'erreur apparait à la deuxième ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    For Each oshp In osld.Shapes
    C'est une erreur runtime 13 de type mismatch.

    Voilà, je ne comprends pas pourquoi la première macro marche et pas la deuxième.
    Je vous remercie par avance.

  2. #2
    pgz
    pgz est déconnecté
    Expert éminent Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Points : 6 591
    Points
    6 591
    Par défaut Référence à la bibli
    Bonjour.

    Je comprends que ton code est dans un projet Excel. La ligne de déclarationprête à confusion entre Excel.Shape et PowerPoint. Shape

    Tu peux essayer de déclarer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim oshp As PowerPoint.Shape
    Cordialement,

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2013
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 28
    Points : 11
    Points
    11
    Par défaut Bingo !
    C'est tout à fait ça.

    Merci beaucoup, j'étais à des KM de penser à ça.

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

Discussions similaires

  1. [XL-2003] Macro Export depuis excel vers une template word
    Par jabranejb dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 09/11/2012, 14h41
  2. Exportation Excel vers PPT avec VBA
    Par ikramea dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 27/12/2011, 18h36
  3. [AC-2007] Export d' Excel vers Access avec VBA depuis Access
    Par rabihm81 dans le forum VBA Access
    Réponses: 1
    Dernier message: 09/06/2009, 15h56
  4. VBA - Export Excel vers PPT - pb de couleur
    Par Neodyme dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 12/09/2008, 10h43
  5. [Excel et PPT 2003]exporter des graphes Excel vers PPT
    Par hoaxpunk dans le forum VBA PowerPoint
    Réponses: 6
    Dernier message: 02/01/2008, 14h43

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