Zellwert aus mehrern Calc-Dateien lesen

Das Tabellenkalkulationsprogramm

Moderator: Moderatoren

Tikoo
Beiträge: 7
Registriert: Fr, 29.08.2008 17:03

Zellwert aus mehrern Calc-Dateien lesen

Beitrag von Tikoo »

Hallo,
als Anfänger bin ganz stolz, dass ich alle Dateinamen eines Verzeichnisses in einem Schleifendurchlauf auslesen kann. Die Informationen aus den Dateinamen bringt in meinem Fall sehr viel jedoch möchte ich jetzt aber noch aus jeder dieser Calc-Dateien einen Wert aus einer ganz speziellen Zelle auslesen.
Wie kann man das machen? Im Forum und in den Dokumentationen habe ich zu dieser Aufgabenstellung leider nichts gefunden.

Danke
turtle47
*******
Beiträge: 1849
Registriert: Mi, 04.01.2006 20:10
Wohnort: Rheinbach

Re: Zellwert aus mehrern Calc-Dateien lesen

Beitrag von turtle47 »

Hi Tikoo,

folgender Code öffnet das Dokument im Hintergrund, liest die angebene Zelle aus und schliesst das Dokument wieder.
Den Wert kannst Du dann ensprechend weiterverarbeiten.

Code: Alles auswählen

Sub Doc_auslesen
    Dim oDocSrc1  As Object
    Dim oDummy()
	oDoc = thisComponent

	'Start Deiner Schleife
	'Dateiname auslesen und in die Variable MyFile schreiben

	MyFile = "test.ods" 'Dateiname
	oUrlSrc  = "file:///C:/" & Myfile  'Pfad zum Dokument anpassen
	dim myFileProp(0) as New com.sun.star.beans.PropertyValue
	myFileProp(0).name="Hidden" 'im Hintergrund öffnen festlegen
	myFileProp(0).value= true   'im Hintergrund öffnen festlegen
	oDocSrc1 = StarDesktop.loadComponentFromURL(oUrlSrc, "_blank", 0, myFileProp())              
	oSheet = oDocSrc1.Sheets().getByName("Tabelle1") 'Tabelle1 ansprechen
	oCellSrc = oSheet.getCellRangeByName("A1") 'Zelle ansprechen
	myString = oCellSrc.string 'Zellinhalt holen
	oDocSrc1.close (True)'Dokument schliessen
	msgbox myString 'Ausgelesenen Wert anzeigen bzw. tu irgend was

	'..............................
	'nächten Schleifendurchgang aufrufen

End sub
Hift das weiter?

Jürgen
Software hat keinen Verstand - benutze deinen eigenen...!

Win 7 SP1/ LibreOffice 3.4.2 OOO340m1 (Build:203) / Firefox 15.0.1 / Notebook ASUS K70IO 64 Bit-Betriebssytem
Tikoo
Beiträge: 7
Registriert: Fr, 29.08.2008 17:03

Re: Zellwert aus mehrern Calc-Dateien lesen

Beitrag von Tikoo »

Hallo Jürgen,
danke für den Code. Ich werde die Sache ausprobieren.
Gruß
Tikoo
Tikoo
Beiträge: 7
Registriert: Fr, 29.08.2008 17:03

Re: Zellwert aus mehrern Calc-Dateien lesen

Beitrag von Tikoo »

Hallo Jürgen,
hat geklappt - bin begeistert!
Jetzt habe ich aber noch das Problem, dass ich die gelesenen Zellinformationen in der aktuellen Datei (die mit dem Programm) notieren. So ging das aber nicht:

myDoc = thisComponent
oSheet = myDoc.Sheets(0)
'Schleife
'..........
'..........
'Schleife bringt Wert im Feld mystring

zeile = zeile + 1
mycell = osheet.getCellByPosition(2 , zeile)
mycell.string = mystring


und so geht es nur einmal und dann Fehler:

'Schleife
'..........
'..........
'Schleife bringt Wert im Feld mystring
myDoc = thisComponent
oSheet = myDoc.Sheets(0)
zeile = zeile + 1
mycell = osheet.getCellByPosition(2 , zeile)
mycell.string = mystring

Gruß
Tikoo
Antworten