Makro-Aufzeichnung bricht ab(?)

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

zebulon-ufh
Beiträge: 5
Registriert: Sa, 24.06.2017 13:04

Makro-Aufzeichnung bricht ab(?)

Beitrag von zebulon-ufh »

Hallo!

Als absoluter Neuling in Open-Office-Calc gelingt mir selbst mir trivial Scheinendes nicht: Ich möchte ein Makro erstellen, welches mir eine fest vorgegebene csv-Datei lädt und als gleichnamige html exportiert. Per Hand geht's. Versuche ich die gleichen Tastendrücke als Makro aufzuzeichnen, scheint mir die Aufzeichnung in genau dem Moment abzubrechen, in dem die Datei geladen wurde: Das Fenster "Makroaufzeichnung beenden" verschwindet. Mag da etwa das Laden der csv-Datei das Makro überschreiben?

Oder mache ich was grundlegend falsch?

CU!
Ulrich
Stephan
********
Beiträge: 12369
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Re: Makro-Aufzeichnung bricht ab(?)

Beitrag von Stephan »

Der Makrorekorder in OpenOffice/LibreOffice kann, im Gegensatz zu MS Office, nicht alle, sondern nur bestimmte Aktionen aufzeichnen. Das was Du willst lässt sich offensichtlich nicht aufzeichnen, ich habe es gerade ausprobiert.

Ein passendes Makro zum Öffnen von csv findest Du z.B. hier:
viewtopic.php?t=5962

dabei ist der Parameter:

Code: Alles auswählen

FileProperties(1).Value = "44,34,ANSI,1,1/2/2/2/3/2/4/2/5/2/6/2/7/2/8/2/9/2/10/2"
kompliziert. Genauere Erläuterungen dazu, siehe z.B. in:
https://www.uni-due.de/~abi070/ooo.html

12.4.6. Dokumente laden und speichern



Gruß
Stephan
zebulon-ufh
Beiträge: 5
Registriert: Sa, 24.06.2017 13:04

Re: Makro-Aufzeichnung bricht ab(?)

Beitrag von zebulon-ufh »

Stephan hat geschrieben: So, 25.06.2017 08:45
Ein passendes Makro zum Öffnen von csv findest Du z.B. hier:
Öffnen ging ja wohl, nur ist die Makro-Aufzeichnung wohl nach Laden des Dokumentes abgebrochen. Komisch, daß das wohl mir als Erstem passiert ist; zu ergooglen war dazu nichts. Trotzdem Danke.

JFTR: Zum (implizit scriptgesteuertem, denn zu Fuß gings ja) Konvertieren von csv nach html habe ich statt zu Openoffice einfach zur bash gegriffen:

Code: Alles auswählen

echo "<table>" > ~/cds.htm
cat ~/cds.csv | sed -e 's/^/<tr><td>/' -e 's/\t/<\/td><td>/g' -e 's/$/<\/td><\/tr>/'  >> ~/cds.htm
echo "</table>"  >> ~/cds.htm 
CU!
Ulrich
Stephan
********
Beiträge: 12369
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Re: Makro-Aufzeichnung bricht ab(?)

Beitrag von Stephan »

Öffnen ging ja wohl, nur ist die Makro-Aufzeichnung wohl nach Laden des Dokumentes abgebrochen.
Nein, da bricht nichts ab, das Fenster zum Speichern das Makros ist im Im fester des ursprünglichen Dokuments bei Beginn der Aufzeichnung des Makros zu finden.
Das Problem ist nur das im Speziellen der Öffnungsvorgang nicht korrekt aufgezeichnet wird, sondern als Ergebnis rauskommt:

Code: Alles auswählen

sub csv_oeffnen
rem ----------------------------------------------------------------------
rem define variables
dim document   as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document   = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

rem ----------------------------------------------------------------------
rem dispatcher.executeDispatch(document, ".uno:Open", "", 0, Array())


end Sub
was kein funktionsfähiges Makro ist, weil Parameter fehlen und die relevante Zeile auskommentiert ist.


Gruß
Stephan
zebulon-ufh
Beiträge: 5
Registriert: Sa, 24.06.2017 13:04

Re: Makro-Aufzeichnung bricht ab(?)

Beitrag von zebulon-ufh »

Stephan hat geschrieben: So, 25.06.2017 15:49
Öffnen ging ja wohl, nur ist die Makro-Aufzeichnung wohl nach Laden des Dokumentes abgebrochen.
Nein, da bricht nichts ab, das Fenster zum Speichern das Makros ist im Fenster des ursprünglichen Dokuments bei Beginn der Aufzeichnung des Makros zu finden.
Einer von uns Beiden versteht uns jetzt nicht :-)

Ich habe mal ein kleines Filmchen "gedreht" und auf <http://u-heidenreich.de/macrorec.ogv> hochgeladen. Sobald das csv geladen ist, verschwindet das kleine "Makro-Aufzeichen"-Fenster. "Fenster des ursprünglichen Dokuments"? -vvv

Aber brich Dir keinen ab, ich habe ja derweil eine pragmatischere Lösung gefunden.

CU!
Ulrich

P.S.: Auch ooconvert scheint nicht zu klappen
Stephan
********
Beiträge: 12369
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Re: Makro-Aufzeichnung bricht ab(?)

Beitrag von Stephan »

Sobald das csv geladen ist, verschwindet das kleine "Makro-Aufzeichen"-Fenster. "Fenster des ursprünglichen Dokuments"?
ja, tut es, ich hatte es ja extra aktuell ausprobiert um nichts Falsches zu schreiben.

Wenn Du die Makroaufzeichnung beginnst ist irgendein Dokumentfenster im Vordergrund, wenn nicht öffne einfach Eines. Sobald Du bei der Makroaufzeichnung an die Stelle kommt wo die csv-Datei geöffnet wird, bekommt diese csv-Datei den Fokus und dadurch verliert das ursprüngliche Dokumentfester Selbigen.

Inn Deinem Video deshalb nicht zu erkennen weil Dein Startdokument leer ist und durch das neue Fenster überschrieben wird, ansonsten aufzurufen über das Menü "Fenster" von OO (bzw. hier bei Windows auch über die Taskleiste).
Aber brich Dir keinen ab
Das tue ich ganz sicher nicht denn diese Dinge sind seit 10 Jahren mein tägliches berufliches Brot.


Gruß
Stephan
zebulon-ufh
Beiträge: 5
Registriert: Sa, 24.06.2017 13:04

Re: Makro-Aufzeichnung bricht ab(?)

Beitrag von zebulon-ufh »

Stephan hat geschrieben: So, 25.06.2017 20:21
Sobald das csv geladen ist, verschwindet das kleine "Makro-Aufzeichen"-Fenster. "Fenster des ursprünglichen Dokuments"?
ja, tut es, ich hatte es ja extra aktuell ausprobiert um nichts Falsches zu schreiben.

Wenn Du die Makroaufzeichnung beginnst ist irgendein Dokumentfenster im Vordergrund,
Ein leeres Spreadsheet, wie ich es von Excel auch kenne. In jenes soll per Makro cds.csv geladen und als cds.html exportiert werden. Ich brauchs ja Scriptgesteuert.
und wenn nicht öffne einfach Eines. Sobald Du bei der Makroaufzeichnung an die Stelle kommt wo die csv-Datei geöffnet wird, bekommt diese csv-Datei den Fokus und dadurch verliert das ursprüngliche Dokumentfester Selbigen.
Und wenn zuvor gar keins offen war, ist das "Makro aufzeichnen"-Fenster ganz futsch. Darauf soll man kommen. Man braucht quasi eine Art "Hilfsdokument", welches das Makro-Fensterchen offenhält? Okay, hab's mal versucht. Rausgekommen ist jenes:

Code: Alles auswählen

sub tohtm
rem ----------------------------------------------------------------------
rem define variables
dim document   as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document   = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

rem ----------------------------------------------------------------------
rem dispatcher.executeDispatch(document, ".uno:Open", "", 0, Array())

rem ----------------------------------------------------------------------
dim args2(2) as new com.sun.star.beans.PropertyValue
args2(0).Name = "URL"
args2(0).Value = "file:///home/ulrich/depot.html"
args2(1).Name = "FilterName"
args2(1).Value = "XHTML Calc File"
args2(2).Name = "SelectionOnly"
args2(2).Value = false

dispatcher.executeDispatch(document, ".uno:ExportTo", "", 0, args2())


end sub
Grmpfl. Das scheint mir das "Hilfsdokument" (hier: depot.csv) zu konvertieren
Aber brich Dir keinen ab
Das tue ich ganz sicher nicht
Doch. Weil ich längst eine andere Lösung habe :lol:

CU!
Ulrich
Stephan
********
Beiträge: 12369
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Re: Makro-Aufzeichnung bricht ab(?)

Beitrag von Stephan »

Ein leeres Spreadsheet, wie ich es von Excel auch kenne.
Und diesbezüglich verhält sich OO anders und das kann man sich nur sagen lassen, denn selbst kann man das nicht irgendwie logisch ableiten.
Darauf soll man kommen.
Darauf kann man, meines Erachtens, nicht kommen, sonderen solche Dinge können Dir nur andere sagen die schon mehr Erfahrung haben. Ich habe das deshalb getan, dafür durfte ich mich von Dir belehren lassen.


Gruß
Stephan
zebulon-ufh
Beiträge: 5
Registriert: Sa, 24.06.2017 13:04

Re: Makro-Aufzeichnung bricht ab(?)

Beitrag von zebulon-ufh »

Stephan hat geschrieben: Mo, 26.06.2017 10:16 dafür durfte ich mich von Dir belehren lassen.
Häh? Von mir aus jetzt EOD
Antworten