Rebecca Birch a des clients qui exigent que tous les rapports leur soient présentés dans PowerPoint. Cela représente une tâche énorme, car toutes les données sources de ces rapports ne sont disponibles que dans Excel. Rebecca cherchait des idées pour faciliter un peu la conversion de l’un à l’autre – peut-être en prenant des «instantanés» des données de la feuille de calcul et en les plaçant dans des diapositives PowerPoint.

Une solution, s’il n’y a pas autant de snapshots nécessaires, est de simplement faire le collage manuellement. Vous pouvez afficher des informations dans Excel, puis appuyez sur la touche PrintScreen pour en placer une image dans le Presse-papiers Office. Basculez vers PowerPoint et choisissez Presse-papiers Office dans le menu Edition. Vous pouvez ensuite voir le contenu du Presse-papiers et choisir ce que vous voulez coller dans la diapositive actuelle.

Une approche moins répétitive consisterait à lier les données du classeur Excel aux diapositives. Vous pouvez utiliser Modifier | Collage spécial (dans PowerPoint) pour coller les données liées. De cette façon, chaque fois que les données du classeur sont mises à jour, les diapositives liées seront également mises à jour. Fait correctement, cette solution offre la possibilité de n’avoir besoin de faire votre collage qu’une seule fois.

Si vous préférez prendre la route du développement d’une macro pour faire le collage, consultez celle développée par Jon Peltier sur son site Web:

http://peltiertech.com/Excel/XL_PPT.html#rangeppt

Il prendra un instantané de toutes les cellules sélectionnées, puis les collera dans la diapositive active dans PowerPoint. (Évidemment, vous devez avoir à la fois Excel et PowerPoint ouverts pour utiliser la macro.)

En outre, la macro peut être modifiée relativement facilement afin de parcourir une série de plages nommées dans Excel et de coller le contenu de ces plages dans des diapositives spécifiées dans PowerPoint.

Une autre solution basée sur les macros consiste à créer une nouvelle présentation PowerPoint (à partir d’Excel) qui contiendra un instantané de chacune des feuilles de calcul dans le classeur Excel actuel. La macro suivante accomplit cette tâche:

Sub CopyWksToPPT()

Dim pptApp As Object     Dim sTemplatePPt As String     Dim wks As Worksheet     Dim sTargetTop As Single     Dim sTargetLeft As Single     Dim sTargetWidth As Single     Dim sTargetHeight As Single     Dim sScaleHeight As Single     Dim sScaleWidth As Single     Dim iIndex As Integer

'Change these as desired     sTargetTop = 30     sTargetLeft = 60     sTargetWidth = 600     sTargetHeight = 450     sTemplatePPt = "C:\Program Files\Microsoft Office\Templates\Blank Presentation.pot"



iIndex = 1     Set pptApp = CreateObject("Powerpoint.Application")

With pptApp         .Visible = True         .Presentations.Open _             FileName:=sTemplatePPt, Untitled:=msoTrue         For Each wks In Worksheets             wks.Select             .ActiveWindow.View.GotoSlide _                 Index:=.ActivePresentation.Slides.Add _                 (Index:=iIndex, Layout:=12).SlideIndex             iIndex = iIndex + 1             wks.UsedRange.Copy             .ActiveWindow.View.Paste             With .ActiveWindow.Selection.ShapeRange                 sScaleHeight = sTargetHeight / .Height                 sScaleWidth = sTargetWidth / .Width                 If sScaleHeight < sScaleWidth Then                     sScaleWidth = sScaleHeight                 Else                     sScaleHeight = sScaleWidth                 End If                 .ScaleHeight sScaleHeight, 0, 2                 .ScaleWidth sScaleWidth, 0, 2                 .Top = sTargetTop + (sTargetHeight - .Height) / 2                 .Left = sTargetLeft + (sTargetWidth - .Width) / 2             End With         Next         .Visible = True     End With End Sub

Notez la zone qui dit «Modifiez-les comme vous le souhaitez». Il contient les spécifications de l’emplacement de l’instantané collé dans chaque diapositive PowerPoint, ainsi que sa hauteur et sa largeur. Le chemin d’accès complet au modèle à utiliser pour la nouvelle présentation PowerPoint est également inclus dans la variable sTemplatePPt.

_Note: _

Si vous souhaitez savoir comment utiliser les macros décrites sur cette page (ou sur toute autre page des sites ExcelTips), j’ai préparé une page spéciale qui comprend des informations utiles.

lien: / excelribbon-ExcelTipsMacros [Cliquez ici pour ouvrir cette page spéciale dans un nouvel onglet de navigateur].

ExcelTips est votre source pour une formation Microsoft Excel rentable.

Cette astuce (2378) s’applique à Microsoft Excel 97, 2000, 2002 et 2003.