Hi zusammen
Ich habe folgendes Problem:
Ich benötige ein Makro, welches auf Knopfdruck mir ein Dialogfenster zur Auswahl einer Grafik öffnet, die ausgewählte Grafik an eine fest definierte Position auf einem bestimmten Tabellenblatt platziert (bis hierhin klappt dies auch) und anschliessend die Grafik um 90 Grad dreht, die Grösse ändert und die Grafik in den Hintergrund bzw. eine Ebene zurück setzt.
Hier im Forum gab es ja schon ähnliche Fragen, aber da war die Lösung entweder nicht für Calc oder ich war zu sehr auf dem Schlauch gestanden, um die geposteten Antwortmöglichkeiten für meine Belange einzusetzen.
Wäre super, wenn mir einer helfen könnte
Danke
Florian
Grafik importieren und bearbeiten per Makro in Calc
Moderator: Moderatoren
-
- **
- Beiträge: 39
- Registriert: Mo, 09.02.2009 20:18
Re: Grafik importieren und bearbeiten per Makro in Calc
Hallo Florian,
schau doch mal auf diese Seiten:
http://www.dannenhoefer.de/faqstarbasic ... #Formulare
Dort ist eine Abbildung, wie man auf die Objekte einer DrawPage in Calc zugreift. Das müsste doch auch für die Grafik gehen, oder? (Bin selbst Neu-Einsteiger). Ich stelle mir den Zugriff so vor: Calc-Dokument -> Arbeitsblatt -> Drawpage -> Grafik
Auch hier (und auf den Folgeseiten) scheint es weitere Infos zu geben:
http://wiki.services.openoffice.org/wik ... ngs/Shapes
Insgesamt macht eine konkretere Schilderung dasProblems sicherlich anschaulicher...
LG Groby
schau doch mal auf diese Seiten:
http://www.dannenhoefer.de/faqstarbasic ... #Formulare
Dort ist eine Abbildung, wie man auf die Objekte einer DrawPage in Calc zugreift. Das müsste doch auch für die Grafik gehen, oder? (Bin selbst Neu-Einsteiger). Ich stelle mir den Zugriff so vor: Calc-Dokument -> Arbeitsblatt -> Drawpage -> Grafik
Auch hier (und auf den Folgeseiten) scheint es weitere Infos zu geben:
http://wiki.services.openoffice.org/wik ... ngs/Shapes
Insgesamt macht eine konkretere Schilderung dasProblems sicherlich anschaulicher...
LG Groby
Re: Grafik importieren und bearbeiten per Makro in Calc
Aloha
Das Drehen einer Grafik geht meines Wissens nach in (unter anderem) Calc und Writer nicht, das müsstest Du entweder mit Draw oder einem externen Programm machen.Flo0815 hat geschrieben:und anschliessend die Grafik um 90 Grad dreht
Versuchs mal folgendes:die Grösse ändert und die Grafik in den Hintergrund bzw. eine Ebene zurück setzt.
Code: Alles auswählen
nWidth = 5000 'Breite
nHeight = 5000 'Höhe
nZOrder = 2 'Ebene
oFilePickerDlg = createUnoService( "com.sun.star.ui.dialogs.FilePicker" )
oFilePickerDlg.appendFilter("Images","*.jpg;*.jpeg;*.gif;*.bmp;*.png;")
oFilePickerDlg.DisplayDirectory = sImgPath
oFilePickerDlg.MultiSelectionMode = False
nResult = oFilePickerDlg.execute
If nResult = 0 Then Exit Sub
sImgPath = oFilePickerDlg.Files(0)
oDoc = thisComponent
oSheet = oDoc.CurrentController.ActiveSheet
oDrawpage = oSheet.Drawpage
oGraph = oDoc.createInstance("com.sun.star.drawing.GraphicObjectShape")
oSize = oGraph.Size
With oSize
.Height = nHeight
.Width = nWidth
End With
With oGraph
.GraphicURL = sImgPath
.Size = oSize
.ZOrder = nZOrder
End With
oDrawpage.add(oGraph)