Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
24.04.2024 17:19:09
Anzeige
Archiv - Navigation
1716to1720
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

XLS-Tabelle via VBA in PPT (mit Symbolsätze)

XLS-Tabelle via VBA in PPT (mit Symbolsätze)
07.10.2019 09:16:30
Dome
Hallo Leute,
Habe eine Datentabelle mit bedingter Formatierung (Symbolsätze), welche ich via VBA in PPT schreibe.
Das klappt soweit alles bestens (siehe Code unten), mit Ausnahme dessen, dass ich die Tabelle nicht analog Diagramm an einem bestimmten Ort einfügen kann.
Wie kann ich das lösen?

Sub create_powerpoint()
Dim pptApp As Object
Dim chtObj As Object
Dim pptSlide As Slide
Dim pptPres As Presentation
Dim strPfad As String
Dim strPOTX As String
strPfad = "NamePFAD\"
strPOTX = "NameDATEI.potx"
Set pptApp = New PowerPoint.Application
pptVorlage = strPfad & strPOTX
pptApp.Presentations.Open Filename:=pptVorlage, untitled:=msoTrue
Set pptPres = pptApp.ActivePresentation
'Einfügen Tabelle
ThisWorkbook.Worksheets("test").Range("B2:F6").Copy
Set pptSlide = pptApp.ActivePresentation.Slides(1)
pptSlide.Shapes.PasteSpecial ppPasteEnhancedMetafile
'Einfügen Diagramm
ThisWorkbook.Worksheets("test").Range("B13:F27").Copy
Set pptSlide = pptApp.ActivePresentation.Slides(2)
Set shp = pptSlide.Shapes.Paste
With shp
.Top = 145
.Left = 35
.Height = 201
.Width = 437
End With
pptPres.SaveAs strPfad & "test.pptx"
pptPres.Close
pptApp.Quit
Set pptPres = Nothing
Set pptApp = Nothing
End Sub
https://www.herber.de/bbs/user/132368.xlsx
Besten Dank für Eure Inputs.
LG
Dome

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Das kannst du so...
07.10.2019 10:08:31
Case
Hallo, :-)
... der Spur nach machen: ;-)
'Einfügen Tabelle
ThisWorkbook.Worksheets("test").Range("B2:F6").Copy
Set pptSlide = pptApp.ActivePresentation.Slides(2)
Set shp1 = pptSlide.Shapes.PasteSpecial(ppPasteEnhancedMetafile)
With shp1
.Top = 120
.Left = 100
.Height = 210
.Width = 450
End With
Ich persönlich würde aber noch alle Variablen deklarieren und alle "Set" wieder auf "Nothing" setzen. Auch würde ich eher "Late Binding" einsetzen. Wenn dir das nichts sagt - schau in einer Suchmaschine deiner Wahl... ;-)
Servus
Case

Anzeige
AW: und nun stehe ich da...
07.10.2019 11:35:29
Dome
..wie ein Idiot. ;)) (hätte man sehen können...)
Ich danke Dir.
LG
Dome

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige