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ä?
Excelistä powerpointtiin makro
4
177
Vastaukset
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
- 1612810
Se oli siinä sitten
Yhdysvaltain presidentti Donald Trump on määrännyt kaiken maan Ukrainalle toimittaman sotilaallisen tuen tauolle, kertoo7262460Paljonko aikaa on kulunut siitä kun viimeksi tapasit hänet?
Päiviä? Viikkoja? Kuukausia? Vuosia?532364- 1352220
- 631905
Trump tekee rauhan Amerikan ja Venäjän ehdoilla
Ukraina luovuttaa Venäjän haluamat alueet Venäjälle. Ukraina luovuttaa Amerikan haluamat arvokkaat mineraalit Amerikall2481734- 311391
Syvälliset keskustelut
Olisivat tärkeintä ensisijaisesti hänen kanssaan Tulisi sellainen hetki, mutta kaikki meni pieleen201329Minulta loppuu aika
Halusin olla täydellinen. Nyt näyttää siltä että viimeinen kiristys jää puolitiehen, sillä h-hetki on jo ihan kohta käsi311222Olisipa sitä henkisesti eheämpi ja rohkeampi
mikään maallinen mammona ei itseäni kiinnosta, eikä sen menetys kiinnostus. Mutta kun kohtaa jonkun sykäyttävän ihmisen,161215