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 :

Boucler sur une insertion powerpoint


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    développeur junior
    Inscrit en
    Janvier 2019
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : développeur junior

    Informations forums :
    Inscription : Janvier 2019
    Messages : 37
    Par défaut Boucler sur une insertion powerpoint
    Bonjour à tous,
    Travaillant actuellement sur un projet de macro transférant des données d'un Excel ( tableau et son graphique) vers un PowerPoint, actuellement j'ai fais un macro permettant de crée une nouvelle slide, d'y ajouter un tableau et un graphique.
    le problème étant que pur faire ça, je suis obligé d'avoir le nom du tableau , puis le code se répète encore et encore...

    je pense qu'il faudrait faire une boucle for each qui dis que pour chaque tableau et son graphique du fichier excel, il crée une nouvelle slide dans le pptx mais je ne sais pas trop comment m'y prendre .
    il y a-t-il un objet qui désigne " chaque tableau", en gros que mon code VBA comprennent qu'il s'agit des tableaux et non d'autre type de données, par exemple pour les graphique je sais que c'est ChartObjects()...

    Je suis preneur de toutes pistes

    Merci à vous !

  2. #2
    Expert confirmé

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 169
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    les tableaux structurés sont des objets qui, en VBA, se nomment des ListObject
    Ils appartiennent à la collection ListObjects sur laquelle tu peux faire une boucle pour les recenser/manipuler

  3. #3
    Membre averti
    Homme Profil pro
    développeur junior
    Inscrit en
    Janvier 2019
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : développeur junior

    Informations forums :
    Inscription : Janvier 2019
    Messages : 37
    Par défaut
    bonjour,
    Merci à toi je vais voir de ce côté alors !

    merci bien, je reviens faire part de la suite, qu'elle soit positive ou non .

  4. #4
    Membre averti
    Homme Profil pro
    développeur junior
    Inscrit en
    Janvier 2019
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : développeur junior

    Informations forums :
    Inscription : Janvier 2019
    Messages : 37
    Par défaut re
    est-ce possible de l'utiliser de cette façon ?

    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
     
    For Each tableau In ListObjects
     
        tableau.Copy
        Pres.Slides(3).Shapes.PasteSpecial (ppPasteBitmap)
        nbshpe = Pres.Slides(3).Shapes.Count
        With Pres.Slides(3).Shapes(nbshpe)
            .Left = 50
            .Top = 100
            .Width = 150
            .Height = 100
     
         End With
     
    Next tableau
    car avec ça, mon debogueur me renvoie direct sur ma ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    For Each tableau In ListObjects

  5. #5
    Expert confirmé

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 169
    Billets dans le blog
    5
    Par défaut
    Le parent de cet objet est la feuille de calcul

    pour parcourir l'ensemble des tableaux d'un classeur, il faut au préalable boucler sur chaque feuille

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Sub toto()
    Dim MonTableau As ListObject
    Dim Sh As Worksheet
        For Each Sh In ThisWorkbook.Worksheets
            For Each MonTableau In Sh.ListObjects
                MsgBox MonTableau.Name
            Next MonTableau
        Next Sh
    End Sub
    dans ton code partiel, tu vas copier tous tes tableaux sur la diapo 3, je le souligne mais c'est peut-être le comportement souhaité

  6. #6
    Membre averti
    Homme Profil pro
    développeur junior
    Inscrit en
    Janvier 2019
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : développeur junior

    Informations forums :
    Inscription : Janvier 2019
    Messages : 37
    Par défaut
    Oui effectivement merci de souligner, il s'agit d'une erreur de ma part.

    Je vais donc recréer une slide à chaque fois et utiliser ton bout de code pour boucler,
    ou peut-être devrais-je plutôt faire un incrément pour dire que sur chaque bouclage on copie dans la slide suivante...

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

Discussions similaires

  1. supprimer une image sur une présentation powerpoint avec VBA
    Par Mati68 dans le forum VBA PowerPoint
    Réponses: 0
    Dernier message: 12/12/2007, 14h51
  2. boucler sur une requete & affichage resultat
    Par ricoree78 dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 24/08/2007, 15h44
  3. "Trigger" sur une insertion : référence au nouveau tuple
    Par samworld dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 26/06/2007, 22h27
  4. [VBA-E] boucler sur une colonne
    Par ricoree78 dans le forum Macros et VBA Excel
    Réponses: 13
    Dernier message: 14/02/2007, 20h04
  5. Boucler sur une table pour renommer des valeurs
    Par webwhisky dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 03/01/2006, 14h19

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