Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
452to456
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
452to456
452to456
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Late Binding - wer kann helfen

Late Binding - wer kann helfen
13.07.2004 20:47:40
Moldor
Hallo,
ich möchte ein Diagrammblatt aus Excel nach PowerPoint exportieren. Da das Tool später unter verschiedenen Versionen laufen soll, soll late - binding verwendet werden
Folgendes habe ich schon gefunden:

Sub Export()
Dim PPTApp as Object
Set PPTApp = CreateObject("PowerPoint.Application")
With PPTApp
.visible = msoTrue
.Presentations.Add
End Sub

Soweit funktioniert dann auch alles. Es wird PowerPoint gestartet. Nun will ich ein Blatt einfügen und ergänze den code um
With .ActivePresentation
.Slides.Add 1,ppLayoutBlank
End with
Und da hängt es bereits. Es wird ein Verweisproblem gemeldet
Danke im voraus für Vorschläge
Moldor

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Late Binding - wer kann helfen
K.Rola
Hallo,
wenn du lateBinding verwendest, sind die benannten Konstanten nicht bekannt, du
musst stattdessen den jeweiligen Zahlenwert verwenden:
With .ActivePresentation
.Slides.Add 1,12
End with
Gruß K.Rola
Ach so...
K.Rola
...konsequenter Weise statt msoTrue -1 verwenden!
Gruß K.Rola
AW: Ach so...
Moldor
Hallo,
danke zunächst für die schnelle Hilfe. Da ich bisher noch nicht mit Late Binding gearbeitet habe, würde ich noch gerne wissen wie man auf die Variablen kommt
Danke
AW: Ach so...
K.Rola
Hallo,
ich setze während der Entwicklung zunächst mal den Verweis, um die
Vorteile von Intellysense zu nutzen. So bekommt man ja in den meisten
Fällen z.B. die Konstanten vorgeschlagen. Wenn du die im Objektkatalog
eingibst und auf der Fernglas klickst, werden unten im Dialog die
Zahlenwerte dazu angezeigt.
Am Schluss dann nur nicht vergessen, die deklarationen zu ändern.
Beispiel mit Verweis: Dim cb as Commandbar
ohne Verweis: Dim cb as Object
Gruß K.Rola
Anzeige
AW: Ach so...
Moldor
Hätte da noch was.
Ziel ist es ein Diagrammblatt zu kopieren
Habe nun folgendens

Private Sub CommandButton1_Click()
Dim PPTApp As Object
Set PPTApp = CreateObject("PowerPoint.Application")
With PPTApp
.Visible = -1
.Presentations.Add
With .ActivePresentation
.slides.Add 1, 12
ActiveSheet.Copy
.slides(1).Shapes.Paste
End With
End With
End Sub

Das klappt aber so nicht
Bin für jeden Tipp offen
Gruß
Moldor
AW: Ach so...
Ramses
Hallo
schau dir das mal an

Sub PPT_Excel_Chart_an_PPT()
Dim ppApp As Object
Dim ppFile As Object
Dim ppPres As String
'Dateiname
ppPres = "C:\Demo.ppt"
'Object referenzieren
Set ppApp = CreateObject("Powerpoint.Application")
'Diagramm kopieren : Name bitte anpassen
ActiveSheet.ChartObjects("Diagramm 1").Copy
'Object initialisieren
ppApp.Visible = msoTrue
'PPT öffnen
Set ppFile = ppApp.Presentations.Open(ppPres)
'Folie Nr. 2 auswählen
ppApp.ActivePresentation.slides(2).Select
'Bereich einfügen und OLE Verknüpfung herstellen = Link
ppApp.ActiveWindow.view.PasteSpecial DataType:=ppPasteDefault, link:=msoTrue
'Eingefügtes Chart skalieren
With ppApp.ActiveWindow.Selection.ShapeRange
'Oberer Rand 1 cm unter Standardtitel
.Top = 150
'Linker Rand 1.5 cm von linkem Folienrand
.Left = 35
'Eingefügte Tabelle auf Links und rechts 1,5 cm Rand skalieren
.Width = 650
'Bei Bedarf Höhe noch einstellen
'Hier ist jedoch zu beachten, dass das Object skaliert wird !!!
'Die Breite verändert sich dann
'.Height = 300
End With
End Sub

ACHTUNG:
Das Diagramm muss als Object auf der Tabelle sein
Der Code funktioniert NICHT aus dem VB_Editor, sondern muss über "Extras - Makro - Ausführen" gestartet werden
Gruss Rainer
Anzeige
AW: Ach so...
Thomas
Hallo Rainer,
danke für den Code, allerdings wird hier nicht mit LateBinding gearbeitet udn gerade hier liegt scheinbar gerade das Problem.
Vielleicht hast du noch eine Idee warum mein Code nicht funktioniert ?
Gruß
Moldor
@K.Rola - Kannst Du noch mal helfen ?
Moldor
Problem s. vorher

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige