Draaitabel naar Powerpoint exporteren

Status
Niet open voor verdere reacties.

PvanHees

Gebruiker
Lid geworden
25 apr 2008
Berichten
15
Ik heb nu een Excelbestand waar ik data kan inlezen en aan de hand van deze data een draaitabel laat maken. Nu kan ik de draaitabel selecteren en dan kopieren, om het vervolgens met Paste Special in Powerpoint de tabel weer te geven.

Erg handig, maar het zou nog mooier zijn als dit ook al automatisch zou gebeuren. Dus:
Ik klik op de knop om data te importeren en de macro zorgt er voor dat de draaitabel wordt gemaakt en dat deze direct in powerpoint wordt geplaatst.

Kan iemand mij vertellen of het mogelijk is om de draaitabel direct naar Powerpoint te exporteren m.b.v. VBA?

Alvast bedankt!
 
Je combineert hier 2 zeer lastige dingen in Excel:

- VBA code voor draaitabellen
- VBA code in Powerpoint

Ik ben benieuwd of iemand zich eraan waagt!
 
Je combineert hier 2 zeer lastige dingen in Excel:

- VBA code voor draaitabellen
- VBA code in Powerpoint

Ik ben benieuwd of iemand zich eraan waagt!


Het gaat nog niet eens direct om draaitebellen. Als iemand mij kan vertellen hoe ik een range naar Powerpoint kan krijgen ben ik al tevreden! ;)
 
Het gaat nog niet eens direct om draaitebellen. Als iemand mij kan vertellen hoe ik een range naar Powerpoint kan krijgen ben ik al tevreden! ;)

Heb je al gegoogled (in het Engels)? Ik kan me niet voorstellen dat je daar niets mee vindt.
 
Heb je al gegoogled (in het Engels)? Ik kan me niet voorstellen dat je daar niets mee vindt.

Ik heb idd al gegoogled, maar heb niet echt een duidelijke beschrijving gevonden. Ik hoopte dat hier iemand mij er dus mee kon helpen. :)
 
Ik heb idd al gegoogled, maar heb niet echt een duidelijke beschrijving gevonden. Ik hoopte dat hier iemand mij er dus mee kon helpen. :)

Google op

excel vba paste pivot table in powerpoint

en neem de 1ste link met code van Andy Pope.

Wigi
 
Ik kom een heel eind met dit voorbeeld. De code die ik tot zover heb:
Code:
Function ExcelToPPT_Table()
     
    Dim rngData As Range
    Dim appPPT As PowerPoint.Application
    Dim prsTest As PowerPoint.Presentation
    Dim sldTest As PowerPoint.Slide
    Dim shpTest As Table
    Dim rngCell As Range
     
    Set rngData = Range("A1:M24")
    Set appPPT = CreateObject("Powerpoint.application")
    appPPT.Visible = True
     
    Set prsTest = appPPT.Presentations.Open("D:\MasterPowerpoint.ppt")
    appPPT.ActiveWindow.ViewType = ppViewSlide
    Set sldTest = prsTest.Slides.Add(1, ppLayoutBlank)
    sldTest.Shapes.AddTable rngData.Rows.Count, rngData.Columns.Count
    Set shpTest = sldTest.Shapes(sldTest.Shapes.Count).Table
    For Each rngCell In rngData
        With shpTest.Cell(rngCell.Row, rngCell.Column).Shape.TextFrame.TextRange
            .Text = rngCell.Value
            .Font.Size = 8
            .Font.Name = "Verdana"
        End With
    Next    
End Function

Ik krijg nu de tabel in Powerpoint, maar de standaard opmaak is niet geweldig, zeg maar rampzalig! ;) Ik heb iig al een kleiner lettertype genomen wat al een hoop scheelt.

Ik zou nu graag de breedte van de kolommen aanpassen dmv autofit. Ik heb echt al veel geprobeerd, waaronder
Code:
shpTest.Columns("A:M").AutoFit
Helaas heb ik hier nog geen werkende oplossing voor gevonden. Is dit uberhaupt mogelijk?

Thnx!

Groeten
 
Laatst bewerkt:
Je kan bij de AddTable methode extra parameters meegeven, kijk daar eens naar.

Misschien kan je een hele smalle tabel opgeven, die uitbreidt als er tekst in komt, ik heb het zelf niet geprobeerd.

Wigi
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan