Power Point automatisé

Word, PowerPoint, Outlook, Access et tous les autres logiciels de la suite Office (sauf Excel)
X
Xionman
Jeune membre
Jeune membre
Messages : 41
Inscrit le : 19 juin 2017
Version d'Excel : 2010 fr

Message par Xionman » 19 juillet 2017, 19:05

Bonsoir à tous !

J'aimerais créer un push-mail quotidien. Pour cela j'ai construit de tableaux et des graphes et j'aimerais à l'aide de ces graphes créer un power point automatisé (1 seul onglet) . Sur cet onglet, il y aurait 2 graphes qui proviendrait de deux onglets différents d'un meme fichier Excel et un peu de texte.
Savez vous si c'est possible ?

Cordialement,
X
Xionman
Jeune membre
Jeune membre
Messages : 41
Inscrit le : 19 juin 2017
Version d'Excel : 2010 fr

Message par Xionman » 20 juillet 2017, 11:55

Pour la création d'une zone de texte, est ce que c'est possible de connaitre sur le PPT que j'ai crée les différents paramètre Left, Top, Width, Height ? Parce qu'on a besoin dans le code VBa
J'ai essayé de cherché en cliquant sur la zone de texte et voir les options. Mais aucune information sur ça ..

Je met ci-joint le fichier PPT : le modèle sera toujours celui-ci
Et je cherche également à toujours mettre cette image en haut à gauche. Du coup je dois la mettre sur le fichier Excel,?
Modèle.pptx
(80.2 Kio) Téléchargé 34 fois
Avatar du membre
i20100
Passionné d'Excel
Passionné d'Excel
Messages : 5'713
Appréciations reçues : 333
Inscrit le : 16 mars 2017
Version d'Excel : 2010

Message par i20100 » 20 juillet 2017, 22:05

Bonjour,

pourriez-vous nous montrer le code vba utilisé pour insertion du textbox et de l'image ?
Vive ces nouvelles saisons qui nous colorent.
isabelle
X
Xionman
Jeune membre
Jeune membre
Messages : 41
Inscrit le : 19 juin 2017
Version d'Excel : 2010 fr

Message par Xionman » 20 juillet 2017, 22:15

Bonsoir sabV
'Pour la création d'une zone de texte : 
Set Sh = .Slides(1).Shapes.AddLabel(Orientation:=msoTextOrientationHorizontal, _
        Left:=100, Top:=100, Width:=150, Height:=60)
    'insère la valeur de la Cellule A1 dans une zone de texte
Sh.TextFrame.TextRange.Text = Range("A1")
    'Modifie la couleur du texte
Sh.TextFrame.TextRange.Font.Color = RGB(255, 100, 255)
Pour l'insertion d'une image, je n'ai pas pu trouver le code VBA correspondant ..
Avatar du membre
i20100
Passionné d'Excel
Passionné d'Excel
Messages : 5'713
Appréciations reçues : 333
Inscrit le : 16 mars 2017
Version d'Excel : 2010

Message par i20100 » 21 juillet 2017, 00:32

Bonjour,

voici un exemple,
Sub NouvellePresentation()
Dim PptApp As PowerPoint.Application
Dim PptDoc As PowerPoint.Presentation
Dim Sh As PowerPoint.Shape
Dim objImageBox As PowerPoint.Shape
 
Set PptApp = CreateObject("Powerpoint.Application")
Set PptDoc = PptApp.Presentations.Add
 
With PptDoc
    '--- Ajoute un Slide
    .Slides.Add Index:=1, Layout:=ppLayoutBlank
    w = .PageSetup.SlideWidth
    h = .PageSetup.SlideHeight
    
    'Crée une zone de texte (AddLabel)
    Set Sh = .Slides(1).Shapes.AddLabel(Orientation:=msoTextOrientationHorizontal, _
        Left:=l, Top:=100, Width:=150, Height:=60)
        
    'insère la valeur de la Cellule A1 dans une zone de texte
    Sh.TextFrame.TextRange.Text = Range("A1")
    'Modifie la couleur du texte
    Sh.TextFrame.TextRange.Font.Color = RGB(255, 100, 255)
    
    'aligne le texbox au centre
    wTB = Sh.Width
    l = (w / 2) - (wTB / 2)
    Sh.Left = l
    
    chemin = "C:\Users\xxxxx\Pictures\Test.png"  ' adapter
    Set objImageBox = .Slides(1).Shapes.AddPicture(chemin, msoCTrue, msoCTrue, 10, 10, 200, 200)
  
End With
End Sub
Vive ces nouvelles saisons qui nous colorent.
isabelle
X
Xionman
Jeune membre
Jeune membre
Messages : 41
Inscrit le : 19 juin 2017
Version d'Excel : 2010 fr

Message par Xionman » 22 juillet 2017, 12:17

ReBonjour

Merci beaucoup, ça m'a beaucoup aidé !

En fait, est-il possible de modifier la taille de la diapositive ? 24,4cm en largeur et 14,28 en hauteur ?
j
jmd
Fanatique d'Excel
Fanatique d'Excel
Messages : 10'603
Appréciations reçues : 251
Inscrit le : 8 décembre 2007
Version d'Excel : 365 + PowerBI

Message par jmd » 22 juillet 2017, 14:26

bonjour

pourquoi un pptx d'une seule diapo ?

1/ tu auras un résultat similaire en pdf directement depuis Excel, sans souci ;;)

2/ tu peux incruster de l'Excel dans un pptx (ça évite de le recréer à chaque fois)
Apprenez les fonctions d'Excel.
Exemple "Mettre sous forme de tableau", TCD, "Récupérer des données".
Apprendre les fonctionnalités "récentes".
X
Xionman
Jeune membre
Jeune membre
Messages : 41
Inscrit le : 19 juin 2017
Version d'Excel : 2010 fr

Message par Xionman » 22 juillet 2017, 15:05

Bonjour jmd

Ils ont utilisé un pptx plutôt qu'un pdf car dans le pptx, ils ont besoin d'incorporer un pdf dans le pptx, ce qu'ils ne peuvent pas faire dans un pdf

Alors en fait, ce qu'ils faisaient avant (que je vienne en tant que stagiaire), c'est qu'ils collectaient des infos et les inscrivaient sur un fichier Excel, puis sur ce fichier Excel, ils crééent des graphiques à partir de ces données et ils devaient insérer ces graphiques dans un PPTX. Et concernant ces PPTX, ils se servent de celui fait la veille et simplement remplacent les graphiques par ceux d'aujourd'hui.
Ils ont besoin de faire 3 PPTX, et enfin ils remplissent un push-mail et mettent en lieu ces PPTX dans un sharepoint et envoient tout cela.

Voilà, tout cela n'est pas vraiment automatisé, et ce que j'aimerais faire, c'est qu'ils n'auront pas besoin de reprendre le PPT de la veille car celui ci serait automatiquement généré avec le même modèle.

Qu'en pensez vous?
j
jmd
Fanatique d'Excel
Fanatique d'Excel
Messages : 10'603
Appréciations reçues : 251
Inscrit le : 8 décembre 2007
Version d'Excel : 365 + PowerBI

Message par jmd » 22 juillet 2017, 15:26

que c'est une usine à gaz

sont les données de départ ? (y compris le fameux pdf qu'on ne peut pas inscrire dans un pdf, bizarre ! )
que veut-on envoyer comme traitement des données ?

quelles sont ces informations (compta, ventes...) ?
Apprenez les fonctions d'Excel.
Exemple "Mettre sous forme de tableau", TCD, "Récupérer des données".
Apprendre les fonctionnalités "récentes".
Avatar du membre
i20100
Passionné d'Excel
Passionné d'Excel
Messages : 5'713
Appréciations reçues : 333
Inscrit le : 16 mars 2017
Version d'Excel : 2010

Message par i20100 » 24 juillet 2017, 04:19

Bonjour à tous,
En fait, est-il possible de modifier la taille de la diapositive ? 24,4cm en largeur et 14,28 en hauteur ?
With PptDoc
    '--- Ajoute un Slide
    .Slides.Add Index:=1, Layout:=ppLayoutBlank
'    '24,4cm en largeur et 14,28 en hauteur
    .PageSetup.SlideWidth = Application.CentimetersToPoints(24.5)
    .PageSetup.SlideHeight = Application.CentimetersToPoints(14.28)
    w = .PageSetup.SlideWidth
    h = .PageSetup.SlideHeight
Vive ces nouvelles saisons qui nous colorent.
isabelle
Répondre Sujet précédentSujet suivant
  • Sujets similaires
    Réponses
    Vues
    Dernier message