Das Notes Forum
Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: mwue am 30.03.05 - 17:11:20
-
Hallo,
ich habe folgendes Problem:
Ich habe einen Lotus Script Agenten geschrieben, der automatisch die Powerpoint Anhänge aus den markierten Dokumenten sammelt und daraus eine Präsentation erstellt. Der Agent funktioniert bei "normalen" Folien. Da war ich zunächst ganz begeistert. :)
Aber bei Folien mit Folienmaster, Hintergrundfarbe und vielen Textfeldern und Objekten werden nicht alle Formatierungen übernommen: Die Hintergrundfarbe und die meisten Textformatierungen (Schriftart + -größe) werden nicht übernommen. :( ???
Da bin ich jetzt doch ganz enttäuscht. Vielleicht könnt Ihr mir da ja weiterhelfen.
Hier der Code
Dim ws As New NotesUIWorkspace
Set session =New NotesSession
Set db = session.CurrentDatabase
Set profiledoc = db.GetProfileDocument("Profile","Feldnamen")
pfad = profiledoc.path(0)
REM Verzeichnis auswählen
filepath = ws.SaveFileDialog( True,"Bitte Ordner auswählen, in dem die Präsentation liegen soll",, pfad)
' Dateiname
Ename = "Referenzprojekte_"
Call NeuerPPTDateiname
If Not(Isempty(filepath)) Then
Forall path In filepath ' weil filepath eine Variant Variable ist, Schleife läuft also nur einmal durch
filename = path + "\" + pptname
End Forall
End If
' Öffnen der neuen Powerpoint Datei und Speichern unter gewähltem Namen
' Powerpoint Objekt erzeugen
Set pptSession = CreateObject("PowerPoint.Application")
pptSession.visible = True
Set pptdoc = pptSession.Presentations.Add(True)
pptdoc.SaveAs filename
pptSession.ActiveWindow.ViewType = ppViewSlideSorter ' Wechsel in Ansicht Folienübersicht
' Bilden der Document Collection
Set dc = db.UnprocessedDocuments
Set doc = dc.GetFirstDocument()
k = 1
While Not(doc Is Nothing)
If Not(Isempty(filepath)) Then
Forall path In filepath ' weil filepath eine Variant Variable ist, Schleife läuft also nur einmal durch
' Oeffnen des entsprechenden Anhangs
Set rtitem = doc.GetFirstItem( "ProjectSheetIntranet" )
Call AnhangLoesen(path) ' Lösen des Anhangs (ppt) mit seinem urspr. Namen ins gewählte Verzeichnis
If flag = "ja" Then ' wenn es in der gewählten Datei Anhänge gibt
Set pptdoc2 = pptSession.Presentations.Open(filename2) ' Projektblatt öffnen, filename2 = Dateiname siehe Sub AnhangLoesen
islides = pptdoc2.Slides.Count ' Zählen der Folien
Print "Kopieren von " + filename2 + " : " + Cstr(islides) + " Folien"
For i = 1 To islides
' Einfügen der Folien, eine nach der anderen
pptdoc2.Slides(i).Copy
pptdoc.Slides.paste
'pptSession.ActiveWindow.View.Paste ' Einfügen
Next
pptdoc2.Close
End If
End Forall
End If
'-------------------------------------------------------------------------------------------------------------------
'Msgbox Cstr(k) + "-te Runde",,"Durchlauf"
k = k+1
Set doc = dc.GetNextDocument(doc)
Wend
pptdoc.Save
Msgbox "Dateiname: " + filename,, "Es wurde eine neue Präsentation erstellt, siehe Taskleiste unten. "
pptSession.visible = True
Vielen Dank und ganz herzliche Grüße
Marion
-
Hallo,
ich habe folgendes Problem:
Ich habe einen Lotus Script Agenten geschrieben, der automatisch die Powerpoint Anhänge aus den markierten Dokumenten sammelt und daraus eine Präsentation erstellt. Der Agent funktioniert bei "normalen" Folien. Da war ich zunächst ganz begeistert. :)
Aber bei Folien mit Folienmaster, Hintergrundfarbe und vielen Textfeldern und Objekten werden nicht alle Formatierungen übernommen: Die Hintergrundfarbe und die meisten Textformatierungen (Schriftart + -größe) werden nicht übernommen. :( ???
Da bin ich jetzt doch ganz enttäuscht. Vielleicht könnt Ihr mir da ja weiterhelfen.
B0rken as designed.
Folienmaster, etc. sind nicht bestandteil eines Slides und können daher auch nicht mit der Copy-Methode kopiert werden.
Probiers mal händisch - Slides(1).Copy macht nichts anderes als STTRG-C auf der ersten Folie. Da werden auch nicht alle Elemente mitkopiert.
Beschwerden über dieses Verhalten bitte an salzamt@microsoft.com ;)
-
Hallo ,
das Kopieren hatte ich händisch auch schon probiert, das stimmt, das ist das gleiche Problem.
Kennt jemand vielleicht einen Befehl der alles mitnimmt ?
Gruss
Marion
-
Kennt jemand vielleicht einen Befehl der alles mitnimmt ?
Fuer derartige Fragen empfiehlt sich ein Blick ins MSDN: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vbapp11/html/ppobjSlide1_HV05193700.asp
Ev. findest Du da was.
-
Hallo m3,
vielen Dank für den Tipp. Da werde ich bei meinen nächsten Powerpoint Problemen mal stöbern.
Mein aktuelles Problem habe ich nun so hingekriegt, dass ich ein Profildokument angelegt habe mit einer Powerpoint Vorlage, die den entsprechenden Folienmaster hat. Und jetzt klappt es.
Vielen Dank für Deine Tipps und Deine Hilfe !
Marion