Excelistä powerpointtiin makro

Kalevi5

Onko kellään tietoa, miten excelistä saisi automaattisesti siirrettyä makrolla tiettyyn ppt-esitykseen, tiettyihin slideihin kuvaajia ja tekstiä soluista? Yritin netistä etsiä tietoa - mahdollista taitaa olla, mutta ei taidot riitä. Olisiko kenelläkään esimerkki koodinpätkää tästä?

4

186

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • kyllähän toi onnistuu, mutta tarvitsee tietää onko kaaviot upotettu taulukkoon vaiko omana taulukkona ja sitten lisätäänkö Powerpointissa uuteen diaan vaiko olemassa olevaan ja mihin kohtaan (objektiin) tekstit liitetään jne...
      eli kyssäreitä riittää ja vaatii kyllä mielellään koko powerpoint esityksen malliksi
      mutta teepä lisää hakuja ja tee pala palalta ettiäpäin...

      Keep EXCELing
      @Kunde

      • Kalevi5

        Lisätään PowerPointissa olemassa olevaan diaan. Ja excelissä kaaviot ovat omana taulukkona, linkkejä ei tarvita, eli tämähän voisi mennä kuvana? Yksinkertaisuudessaan siis excelistä sheetiltä 1, chart 1, powerpointtiin slidelle 26 ja chartin viereen tekstiä pari ranskalaista viivaa excelin soluista A1 ja A2. Ilmeisesti myös referenssit täytyy avata Vba:sta?


      • Kalevi5 kirjoitti:

        Lisätään PowerPointissa olemassa olevaan diaan. Ja excelissä kaaviot ovat omana taulukkona, linkkejä ei tarvita, eli tämähän voisi mennä kuvana? Yksinkertaisuudessaan siis excelistä sheetiltä 1, chart 1, powerpointtiin slidelle 26 ja chartin viereen tekstiä pari ranskalaista viivaa excelin soluista A1 ja A2. Ilmeisesti myös referenssit täytyy avata Vba:sta?

        tossa tommonen perusjutska...
        helppo sitä fiksata

        Sub ChartToPresentation()
        ' muista referenssi Powerpointiin...
        'tarkista nimet
        Dim PPApp As PowerPoint.Application
        Dim PPPres As PowerPoint.Presentation
        Dim PPSlide As PowerPoint.Slide
        Dim PPShape As PowerPoint.Shape
        Dim Teksti1 As String
        Dim Teksti2 As String
        Sheets(1).ChartObjects("Chart 1").Activate
        Teksti1 = Sheets(1).Range("A1")
        Teksti2 = Sheets(1).Range("A2")
        Set PPApp = GetObject(, "Powerpoint.Application")
        Set PPPres = PPApp.ActivePresentation
        PPApp.ActiveWindow.ViewType = ppViewSlide
        PPApp.ActiveWindow.View.GotoSlide 26
        Set PPSlide = PPPres.Slides(PPApp.ActiveWindow.Selection.SlideRange.SlideIndex)
        PPSlide.Delete
        Set PPSlide = PPPres.Slides.Add(2, ppLayoutBlank)
        PPApp.ActiveWindow.View.GotoSlide 2
        ActiveChart.CopyPicture Appearance:=xlScreen, Size:=xlScreen, Format:=xlPicture
        PPSlide.Shapes.Paste.Select
        PPApp.ActiveWindow.Selection.ShapeRange.Align msoAlignCenters, True
        PPApp.ActiveWindow.Selection.ShapeRange.Align msoAlignMiddles, True

        Set PPShape = PPSlide.Shapes.AddTextbox(msoTextOrientationHorizontal, 10#, 250#, 400#, 36#)
        PPShape.TextFrame.TextRange.Text = "- " & Teksti1

        Set PPShape = PPSlide.Shapes.AddTextbox(msoTextOrientationHorizontal, 10#, 280#, 400#, 36#)
        PPShape.TextFrame.TextRange.Text = "- " & Teksti2
        Set PPSlide = Nothing
        Set PPPres = Nothing
        Set PPApp = Nothing
        End Sub


        Keep EXCELing
        @Kunde


    • korjaa noi rivit koodissa, mulla oli vaan 3 diaa ja siksi unohdin fiksata ne tohon mallikoodiin...

      Set PPSlide = PPPres.Slides.Add(2, ppLayoutBlank)
      PPApp.ActiveWindow.View.GotoSlide 2

      mutta ne
      Set PPSlide = PPPres.Slides.Add(26, ppLayoutBlank)
      PPApp.ActiveWindow.View.GotoSlide 26

      Keep EXCELing
      @Kunde

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Laitetaas nyt kirjaimet tänne

      kuka kaipaa ja ketä ?
      Ikävä
      176
      11185
    2. Pieni häivähdys sinusta

      Olet niin totinen
      Ikävä
      54
      5328
    3. Taas ryssittiin oikein kunnolla

      r….ä hyökkäsi Viroon sikaili taas ajattelematta yhtään mitään https://www.is.fi/ulkomaat/art-2000011347289.html
      NATO
      46
      2555
    4. Missä olet ollut tänään kaivattuni?

      Ikävä sai yliotteen ❤️ En nähnyt sua tänään söpö mies
      Ikävä
      37
      2256
    5. Vanha Suola janottaa Iivarilla

      Vanha suola janottaa Siikalatvan kunnanjohtaja Pekka Iivaria. Mies kiertää Kemijärven kyläjuhlia ja kulttuuritapahtumia
      Kemijärvi
      13
      1771
    6. Valtimon Haapajärvellä paatti mäni nurin

      Ikävä onnettomuus Haapajärvellä. Vene hörpppi vettä matkalla saaren. Veneessä ol 5 henkilöä, kolme uiskenteli rantaan,
      Nurmes
      43
      1675
    7. Tiedän kuka sinä noista olet

      Lucky for you, olen rakastunut sinuun joten en reagoi negatiivisesti. Voit kertoa kavereillesi että kyl vaan, rakkautta
      Ikävä
      31
      1310
    8. Känniläiset veneessä?

      Siinä taas päästiin näyttämään miten tyhmiä känniläiset on. Heh heh "Kaikki osalliset ovat täysi-ikäisiä ja alkoholin v
      Nurmes
      36
      1265
    9. Tulemmeko hyvin

      Toimeen ja juttuun keskenämme? Luulen, että sopisit hyvin siihen ☀️ympäristöön, paljon kaikkea erilaista.♥️mietin tätä s
      Ikävä
      6
      1076
    10. Daniel Nummelan linjapuhe 2025

      Kansanlähetyksen toiminnanjohtajan Daniel Nummelan linjapuhe tänään. Rehellistä analyysiä mm. evlut kirkosta ja piispo
      Luterilaisuus
      105
      1001
    Aihe