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 PowerPoint Discussion :

VBA : Problème de copie de cellules d'excel à powerpoint [Toutes versions]


Sujet :

VBA PowerPoint

  1. #1
    Candidat au Club
    Homme Profil pro
    Responsable marketing opérationnel
    Inscrit en
    Décembre 2016
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Responsable marketing opérationnel
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2016
    Messages : 2
    Points : 2
    Points
    2
    Par défaut VBA : Problème de copie de cellules d'excel à powerpoint
    Bonjour à tous et à toutes,

    Je m'excuse si ma question a déjà été posée mais après avoir parcouru le forum en long, en large et en travers je n'ai toujours pas trouvé de réponses à ma question.
    En effet, j'essaye d'automatiser le passage de chiffres d'une feuille excel à un powerpoint. J'ai créé un Template spécialement pour l'occasion, en ordonnant les shapes pour les faire correspondre à chacune des cellules sur mon excel.
    Tout fonctionne à merveille sauf que : les données présentes sur mon excel sont des pourcentages, et lorsqu'elles passent sur le ppt elles s'affichent en nombre à virgules (je m'explique, si j'ai 100% dans la cellule A1 je retrouve 1 dans la shape que j'ai assigné, si j'ai 50% dans la cellule A2, je retrouve 0,5 dans la shape assignée, etc). Je viens de passer la journée sur le problème et je ne sais toujours pas le résoudre, étant extrêmement novice en VBA et n'ayant utilisé que des bouts de code pour créer la mienne.

    Sub ModifierPresentationExistante()
    Dim PptApp As PowerPoint.Application
    Dim PptDoc As PowerPoint.Presentation

    Set PptApp = CreateObject("Powerpoint.Application")
    PptApp.Visible = True

    Set PptDoc = PptApp.Presentations.Open("templatecréépourl'occasion")

    With PptDoc

    'insère le contenu de la cellule B10 dans la 8eme zone de texte,
    'de la 3eme slide
    .Slides(3).Shapes(8).TextFrame.TextRange.Text = Range("B10")
    .Slides(3).Shapes(9).TextFrame.TextRange.Text = Range("D10")
    .Slides(3).Shapes(10).TextFrame.TextRange.Text = Range("E10")
    .Slides(3).Shapes(11).TextFrame.TextRange.Text = Range("F10")
    .Slides(3).Shapes(12).TextFrame.TextRange.Text = Range("G10")
    .Slides(3).Shapes(13).TextFrame.TextRange.Text = Range("C10")
    .Slides(3).Shapes(14).TextFrame.TextRange.Text = Range("B12")
    .Slides(3).Shapes(15).TextFrame.TextRange.Text = Range("D12")
    .Slides(3).Shapes(16).TextFrame.TextRange.Text = Range("E12")
    .Slides(3).Shapes(17).TextFrame.TextRange.Text = Range("F12")
    .Slides(3).Shapes(18).TextFrame.TextRange.Text = Range("G12")
    .Slides(3).Shapes(19).TextFrame.TextRange.Text = Range("C12")
    .Slides(3).Shapes(20).TextFrame.TextRange.Text = Range("B14")
    .Slides(3).Shapes(21).TextFrame.TextRange.Text = Range("D14")
    .Slides(3).Shapes(22).TextFrame.TextRange.Text = Range("E14")
    .Slides(3).Shapes(23).TextFrame.TextRange.Text = Range("F14")
    .Slides(3).Shapes(24).TextFrame.TextRange.Text = Range("G14")
    .Slides(3).Shapes(25).TextFrame.TextRange.Text = Range("C14")
    .Slides(3).Shapes(26).TextFrame.TextRange.Text = Range("B22")
    .Slides(3).Shapes(27).TextFrame.TextRange.Text = Range("D22")
    .Slides(3).Shapes(28).TextFrame.TextRange.Text = Range("E22")
    .Slides(3).Shapes(29).TextFrame.TextRange.Text = Range("F22")
    .Slides(3).Shapes(30).TextFrame.TextRange.Text = Range("G22")
    .Slides(3).Shapes(31).TextFrame.TextRange.Text = Range("C22")
    .Slides(3).Shapes(32).TextFrame.TextRange.Text = Range("B16")
    .Slides(3).Shapes(33).TextFrame.TextRange.Text = Range("D16")
    .Slides(3).Shapes(34).TextFrame.TextRange.Text = Range("E16")
    .Slides(3).Shapes(35).TextFrame.TextRange.Text = Range("F16")
    .Slides(3).Shapes(36).TextFrame.TextRange.Text = Range("G16")
    .Slides(3).Shapes(37).TextFrame.TextRange.Text = Range("C16")
    .Slides(3).Shapes(38).TextFrame.TextRange.Text = Range("B18")
    .Slides(3).Shapes(39).TextFrame.TextRange.Text = Range("D18")
    .Slides(3).Shapes(40).TextFrame.TextRange.Text = Range("E18")
    .Slides(3).Shapes(41).TextFrame.TextRange.Text = Range("F18")
    .Slides(3).Shapes(42).TextFrame.TextRange.Text = Range("G18")
    .Slides(3).Shapes(43).TextFrame.TextRange.Text = Range("C18")
    .Slides(3).Shapes(44).TextFrame.TextRange.Text = Range("B20")
    .Slides(3).Shapes(45).TextFrame.TextRange.Text = Range("D20")
    .Slides(3).Shapes(46).TextFrame.TextRange.Text = Range("E20")
    .Slides(3).Shapes(47).TextFrame.TextRange.Text = Range("F20")
    .Slides(3).Shapes(48).TextFrame.TextRange.Text = Range("G20")
    .Slides(3).Shapes(49).TextFrame.TextRange.Text = Range("C20")
    End With
    End Sub
    Ci-joint un bout de mon code pour vous aider peut-être à y voir plus clair.

    En vous remerciant d'avance,
    Alan

  2. #2
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par alan.oze Voir le message
    Tout fonctionne à merveille sauf que : les données présentes sur mon excel sont des pourcentages, et lorsqu'elles passent sur le ppt elles s'affichent en nombre à virgules (je m'explique, si j'ai 100% dans la cellule A1 je retrouve 1 dans la shape que j'ai assigné, si j'ai 50% dans la cellule A2, je retrouve 0,5 dans la shape assignée, etc).
    Bonjour,

    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
            .Slides(3).Shapes(8).TextFrame.TextRange.Text = Format(ActiveSheet.Range("B10"), "0%")    ' 0 décimale
            .Slides(3).Shapes(9).TextFrame.TextRange.Text = Format(ActiveSheet.Range("D10"), "0.0%") ' 1 décimale, etc...
    Cordialement.

  3. #3
    Candidat au Club
    Homme Profil pro
    Responsable marketing opérationnel
    Inscrit en
    Décembre 2016
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Responsable marketing opérationnel
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2016
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    Merci beaucoup Eric, d'avoir pris le temps de m'aider !
    Ta solution fonctionne très bien.

    Très bonne journée,
    Alan

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

Discussions similaires

  1. [XL-2003] Problème de copie de cellules sur mail outlook
    Par fxleo dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 26/10/2009, 15h32
  2. problème de copie de userform dans excel
    Par pierrepasquetp dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 21/06/2008, 17h26
  3. [VBA]Problème de copie de ligne
    Par baptbapt dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 21/06/2007, 09h47
  4. [VBA]Problème ouverture - copie fichers de plusieurs sources
    Par kullervo dans le forum Général VBA
    Réponses: 9
    Dernier message: 27/04/2007, 11h22
  5. Réponses: 1
    Dernier message: 07/01/2006, 23h33

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