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
Seite 1 von 3  1 23      
NicoleWagner

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

Tabelle in OpenOffice zugreifen

  Alt 15. Jan 2020, 20:30
In LibreOffice 6.4. (der Nachfolger von OpenOffice) habe ich eine Tabelle mit sehr vielen Zeilen zu je 2 oder 3 Zellen.
Ich möchte nach dem "String" der ersten Zelle suchen und mir die zweite Zelle als Text ausgeben lassen.

Ich frage also von Delphi etwa ab "Blumen und Nelken" (Zelle 1) und bekomme als Antwort die Zelle 2, also Hausnummer "Vorkommen überall und in Klein-Asien, bitte stell sie in die Vase".
(die dritte Zelle ist fakultativ und ich brauche sie nicht)

Meine Fragen:
Wie lese ich eine OO Tabelle zeilenweise (!) in Delphi ein? Denn zuweilen sind es zwei, manchmal drei Zellen.
Wie greife ich die Zellen darauf zu?

Altenativ: Wie verwandle ich eine OO Tabelle in eine Firebird-DB-Tabelle? (ja, das ist kühn, doch die Hoffnung stirbt zuletzt)

Danke für Tipps!
  Mit Zitat antworten Zitat
hoika

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

AW: Tabelle in OpenOffice zugreifen

  Alt 15. Jan 2020, 20:35
Hallo,
vielleicht findest Du hier was dazu
https://www.freepascal.org/~michael/...openoffice.pdf
Heiko
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#3

AW: Tabelle in OpenOffice zugreifen

  Alt 16. Jan 2020, 06:29

Altenativ: Wie verwandle ich eine OO Tabelle in eine Firebird-DB-Tabelle? (ja, das ist kühn, doch die Hoffnung stirbt zuletzt)
Wenn es da nichts outofthebox gibt dann ist Dein Stichort ASCIIDelimited(CSV).Das geht so ziemlich mit allen Datenbanken und Tabellenkalkulationen. Du mußt nur aufpassen, daß Dir die eingebaute Intelligenz keinenStrich durch die Rechnung macht. Also der Delimiter und die Quotes sollten möglichtst auf beiden Seiten definierbar sein.
Und der verwendete Zeichensatz muß natürlich von beiden Seiten verstanden werden.

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Tabelle in OpenOffice zugreifen

  Alt 16. Jan 2020, 07:58
Ich bin schon länger von OpenOffice auf LibreOffice gewechselt. In LibreOffice wurde in StarBase die intere Datenbank von HSQL auf FireBird embedded umgestellt. Hier gäbe es u.U. eine Möglichkeit die Daten einfach zu konvertieren. Sonst halt über den Umweg von CSV.
Markus Kinzler
  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, 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.733 Beiträge
 
Delphi 6 Enterprise
 
#6

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
961 Beiträge
 
Delphi 6 Professional
 
#7

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
 
#8

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
 
#9

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.270 Beiträge
 
Delphi 10.4 Sydney
 
#10

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
Antwort Antwort
Seite 1 von 3  1 23      


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 21:00 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz