AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Tabelle in OpenOffice zugreifen

Ein Thema von NicoleWagner · begonnen am 15. Jan 2020 · letzter Beitrag vom 25. Jan 2020
Antwort Antwort
NicoleWagner

Registriert seit: 6. Jul 2010
167 Beiträge
 
Delphi XE3 Professional
 
#1

AW: Tabelle in OpenOffice zugreifen

  Alt 16. Jan 2020, 14:23
Danke für alle Antworten.

Meine Schwierigkeit: Wenn ich die Tabelle in text konvertiere, dann bleibt davon ein sinnloser Haufen Textschnipsel übrig. Womit sie cvs mit sehr hohe Wahrhscheinlichkeit erübrigt. (Ich habe da Arbeit in 50 Seiten Tabelle investiert. Erst danach fiel mir ein.... usw. Ihr kennt das.)

Aufhorchen lässt mich "LibreOffice" und "Firebird". Ja doch, ich habe LibreOffice 6.4.0.1
Hast Du da Details dazu wie man das in Delphi / Firbird bringt?

Und gerade probierte ich, die Tabelle mit copy und paste in ods (Format für Calc = "Excel") zu bringen. Das hat geklappt.
Innerhalb von Excel hätte ich jetzt noch die VBA Möglichkeit. Doch in Calc probierte ich die noch nie und wie ich VBA mit Delphi interagieren lassen könnte, da schaue ich leider nur vollkommen ratlos.

Doch grundsätzlich: auch Zugriff in ods wäre ein Weg.



PS: ein weiterer Weg wäre, wenn ich via Delphi OO / LO öffnen könnte mit Parameter: Datei und eine Suchanfrage-nach-einem-String. Diese Suchanfrage würde mir dann auch die Datei / Tabelle / Zelle / Zeile an der richtigen Stelle öffnen.

Geändert von NicoleWagner (16. Jan 2020 um 15:35 Uhr)
  Mit Zitat antworten Zitat
Jumpy

Registriert seit: 9. Dez 2010
Ort: Mönchengladbach
1.740 Beiträge
 
Delphi 6 Enterprise
 
#2

AW: Tabelle in OpenOffice zugreifen

  Alt 16. Jan 2020, 16:07
In dem Dokument, das hoika verlinkt hat, steht doch mMn alles drin, um anzufangen. Nur anstatt ein Calc/OpenOffice-Dokument zu öffnen und was reinzuschreiben, liest man es halt aus.
Ralph
  Mit Zitat antworten Zitat
HolgerX

Registriert seit: 10. Apr 2006
Ort: Leverkusen
989 Beiträge
 
Delphi 6 Professional
 
#3

AW: Tabelle in OpenOffice zugreifen

  Alt 16. Jan 2020, 18:02
Hmm..

Könnte es sein, dass beide (Libre Office und Open Office) noch die selbe OLE-Schnittstelle haben?

Wenn ja, kannst Du wie z.B. bei EXECL per OLE direkt das Dokument im Libre Office öffnen und die Zellen einfach per Schleife auslesen.

Wir hatten vor längerem per OLE mit OpenOffice Daten als Tablle per Calc exportiert..

Wenn der obrige Link (von hoika) nicht reicht, einfach mal nach OpenOffice und OLE googlen..
(Ja ich Verwende Delphi 6 Pro und will NICHT wechseln!)
  Mit Zitat antworten Zitat
NicoleWagner

Registriert seit: 6. Jul 2010
167 Beiträge
 
Delphi XE3 Professional
 
#4

AW: Tabelle in OpenOffice zugreifen

  Alt 16. Jan 2020, 18:02
Ich bin von dem Dokument etwas überfordert.

Wie etwa würdest Du formulieren:


string_erste_Zelle:= (Tabelle x, erste Zeile, erste Zelle);
string_erste_Zelle_Text_der_dazgehört:=(Tabelle x, erste Zeile, zweite Zelle);

Wenn eine dritte Zelle mit gebrochenem Verweis vorhanden ist oder gar keine dritte Zelle, dann geht zur zweiten Zeile.
Ist der Verweis gültig, speichere die Seitenzahl.
  Mit Zitat antworten Zitat
NicoleWagner

Registriert seit: 6. Jul 2010
167 Beiträge
 
Delphi XE3 Professional
 
#5

AW: Tabelle in OpenOffice zugreifen

  Alt 16. Jan 2020, 19:30
@ Holger

Googelte OLE und wieder erschlugen mich die Ergebnisse.

Ich hoffte hier ein paar Zeilen kopieren zu können.
https://www.swissdelphicenter.ch/de/...de.php?id=1728

Doch ich scheitere schon hier:
XLApp := CreateOleObject('Excel.Application');
Ich lese "undeklarierter Bezeichner ole-Object"

Du hast sicher schon erraten, dass ich von OLE keine Ahnung habe.
Also suchte ich in meiner Tool Palette und fand:
TOleContainer.
Den klebte ich auf mein Formular.

Man kann wohl davon ausgehen, dass es völlig absurd ist, was ich versuchte. Doch weiß ich im Augenblick nicht, wo ich beginnen könnte, dass es Sinn macht.
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.277 Beiträge
 
Delphi 10.4 Sydney
 
#6

AW: Tabelle in OpenOffice zugreifen

  Alt 16. Jan 2020, 22:11
Hallo,
was hat denn Excel mit Libre-Office zu tun?
Heiko
  Mit Zitat antworten Zitat
Lemmy

Registriert seit: 8. Jun 2002
Ort: Berglen
2.403 Beiträge
 
Delphi 10.4 Sydney
 
#7

AW: Tabelle in OpenOffice zugreifen

  Alt 17. Jan 2020, 04:32
es war vor langer Zeit, da hatte ich darüber mal im "Entwickler" (6-2003) einen Artikel geschrieben... Hier
https://sourceforge.net/p/oo-automation/code/HEAD/tree/
kann man sich die Sourcen holen, die ich dann später mit einem weiteren Entwickler aktualisiert habe.

Sind aber schon älter und ich habe das mit einem aktuellen OO oder LO nicht mehr versucht, aber ich hoffe, dass die Sourcen als Einstieg ausreichen. Das Objektmodell von OO / LO ist jetzt nicht unbedingt selbst erklärend, aber wenn man sich etwas mit der Doku beschäftigt kommt man auch da rein.
  Mit Zitat antworten Zitat
NicoleWagner

Registriert seit: 6. Jul 2010
167 Beiträge
 
Delphi XE3 Professional
 
#8

AW: Tabelle in OpenOffice zugreifen

  Alt 17. Jan 2020, 15:01
Ganz lieben Dank an Lemmy und HolgerX! (und auch alle anderen)
Die Sachen habe ich mir jetzt alle heruntergeladen und entpackt. Sie sehen überaus vielversprechend aus und ich werde mich die nächsten Tage einmal ans Verstehen und Testen machen!
  Mit Zitat antworten Zitat
NicoleWagner

Registriert seit: 6. Jul 2010
167 Beiträge
 
Delphi XE3 Professional
 
#9

AW: Tabelle in OpenOffice zugreifen

  Alt 17. Jan 2020, 10:11
Wenn Du eine Lösung zu Libre Office weißt, - bitte poste sie.
Da ich selbst keine weiß, nehme ich auch einen Workaround.
LO ist kompatibel zu MS-Office und kann auch in diesen Formaten abspeichern. Daher wäre das ein denkbarer Weg zum Workaround das Excel-Format.
  Mit Zitat antworten Zitat
jobo

Registriert seit: 29. Nov 2010
3.072 Beiträge
 
Delphi 2010 Enterprise
 
#10

AW: Tabelle in OpenOffice zugreifen

  Alt 17. Jan 2020, 10:36
Wenn Du Dich auf meinen Vorschlag beziehst, hier ist eine Variante die man mit sqlite erzeugen kann, ohne zu programmieren:
https://rextester.com/WZHK48281

Das Beispiel ist in Postgres, sollte so auch in SQLite funktionieren.
Du musst nur Deine LO Daten in CSV exportieren und in sqlite einlesen.
Gruß, Jo
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:12 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz