Libre Office

Daten exportieren

Base ermöglicht es Ihnen, Ihre Daten in einer Datenbank direkt mit LibreOffice zu bearbeiten.
MoonKid
Beiträge: 172
Registriert: Fr 14. Okt 2011, 21:26

Re: Daten exportieren

Beitrag von MoonKid » Mo 7. Aug 2017, 12:11

Warum löst man das so über ein Makro?
Wäre es nicht einfacher, die Tabelle in Calc zu importieren/kopieren und dann als CSV zu exportieren?

Wo ist der Vorteil?

RobertG
* LO-Experte *
Beiträge: 2965
Registriert: Sa 19. Mai 2012, 17:37
Kontaktdaten:

Re: Daten exportieren

Beitrag von RobertG » Mo 7. Aug 2017, 13:15

Hallo MoonKid,

jetzt bin ich raus. Du wolltest eine einfachere Möglichkeit als die händische Kopie. Siehe den ersten Post in diesem Thread. Du kannst natürlich gerne auf Zauberei setzen - davon habe ich aber keine Ahnung.

Gruß

Robert
https://de.libreoffice.org/get-help/documentation/
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=base_handbuch
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=xml_formulare

Robs123
Beiträge: 20
Registriert: Mo 7. Aug 2017, 09:49

Re: Daten exportieren

Beitrag von Robs123 » Mo 7. Aug 2017, 16:18

Hallo Robert,

eine kleine Frage habe ich noch. Ich passe zur Zeit das von Dir netterweise bereitgestellte CSV-export Makro an meine eigene Datenbank an. Was macht 'stReport' in:

oReport = ThisDatabaseDocument.ReportDocuments.getByName(stReport).open

Dies war mir leider nicht direkt ersichtlich und ich habe es (zumindest per Suchfunktion) nicht im LO Handbuch gefunden. Die gegebenen Beispiele mit 'getByName' haben so wie ich es sehe alle einen String abgerufen.

Liebe Grüße,

Robb

RobertG
* LO-Experte *
Beiträge: 2965
Registriert: Sa 19. Mai 2012, 17:37
Kontaktdaten:

Re: Daten exportieren

Beitrag von RobertG » Mo 7. Aug 2017, 17:23

Hallo Robb,

ich habe den Namen des Berichtes in dem Button hinterlegt:

Code: Alles auswählen

SUB Data_Export(oEvent AS OBJECT)
...
oField = oEvent.Source.Model
stReport = oField.Tag
...
Das auslösende Ereignis kommt von einem Button. Über oEvent.Source.Model komme ich zu diesem Button. In seinen Zusatzinformationen ("Tag") steckt der Name des Berichtes. So etwas nutze ich öfter, wenn ich die gleiche Prozedur auch von anderen Buttons für andere Berichte nutzen will. Da wäre dann allerdings auch noch ein entsprechender Ausgabename zu hinterlegen, so dass die *.csv-Dateien sich nicht gegenseitig überschreiben.

Du kannst natürlich nur

Code: Alles auswählen

SUB Data_Export
...
oReport = ThisDatabaseDocument.ReportDocuments.getByName("Bericht_Personen").open
...
in meinem Beispiel schreiben. Dann müsstest Du aber für den nächsten Button die Prozedur ein zweites Mal anlegen.

Gruß

Robert
https://de.libreoffice.org/get-help/documentation/
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=base_handbuch
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=xml_formulare

Open Office
Antworten