Calc-Tabelle von Writer auslesen

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

Moderator: Moderatoren

Benutzeravatar
sven-my
*****
Beiträge: 358
Registriert: Fr, 14.12.2007 19:56

Calc-Tabelle von Writer auslesen

Beitrag von sven-my »

Hallo Experten,

sicherlich ist ein gleiches oder ähnliches Thema schon mal behandelt worden, aber mir ist partou kein Suchwort eingefallen, daß dazu gepaßt hätte.

Ich möchte per Makro aus einem Writer-Dokument eine geöffnete Calc-Datei, die nur eine einzige Tabelle enthält, zeilenweise Daten auslesen.

Dazu habe ich ein Makro, daß beim Öffnen, und beim Ändern der Calc-Datei gestartet wird, die Anzahl der vorhandenen Datensätze in Zelle F2, und die Anzahl der auszulesenden Datensätze in Zelle G2 schreibt.

bekannt ist: DokumentName / DokumentTitel (Gefrier.ods / Gefrier)

Die Datensätze stehen in A2:Dn, wobei 'n' der Wert von Zelle F2 ist

Zum Auslesen will ich zwei Schleifen nehmen, die die Werte von F2 und G2 verarbeiten:

Code: Alles auswählen

' ab hier weiß ich nicht weiter
' wie spreche ich das Calc-Dokument, darin die Tabelle(Name = Tabelle1), dort Spalte und Zeile an ?

anz = Dokumentname/TabellenName/Spalte6/Zeile1                     'Anzahl der auszulesenden Datensätze
bzw.
anz = Tabelle1(G2)

anzDsatz = Dokumentname/TabellenName/Spalte5/Zeile1              'Anzahle der gesamten Datensätze
bzw.
anzDsatz = Tabelle1(F2)

Dim inhalt(4,anz)
.
.
.
sp ' entspricht Spalte
ze = 2	' entspricht erste Zeile der Datensätze

Text = Dokumentname/Tabelle1/Zelle(4,ze)
		while Text <> "x" then
			Text = Dokumentname/Tabelle1/Zelle(4,ze)
		if Text = "x" then
			for sp = 0 to 3
				inhalt1(y,sp) = Dokumentname.Tabelle1.Zelle(sp,ze)
			next
			ze = ze + 1
				if ze > anzDsatz then exit while
			y = y + 1
		else
			ze = ze + 1
				if ze > anzDsatz then exit while
		end if
		wend
.
.
.
' hier geht weiter mit dem Eintrag ins Writer-Dokument


Hoffentlich ist dies alles nicht zu langatmig geworden.


gruß
sven-my
win7 prof / AOO 4.1.2 & AOO 3.4.0 portable