Hallo
ich habe folgendes Problem ich möchte aus mehreren (gleiche Struktur) Dateien Werte mit BASIC-Script auslesen, weiterverarbeiten und in einer neuen
Datei einfügen, Leider habe ich nicht's brauchbares im Netz gefunden, immer nur die Aussage, dass das nicht mit mehreren Dateien geht.
Danke für Eure Hilfe
datenexport aus mehreren ods-dateien in eine neue ODS-Datei
Moderator: Moderatoren
-
- Beiträge: 3
- Registriert: Fr, 29.10.2010 23:05
Re: datenexport aus mehreren ods-dateien in eine neue ODS-Datei
Hallo,
ist es richtig, das du aus x-ods-Files , ein-ods-file erstellen willst. Also mergen. Oder hab ich dich missverstanden.
mfg
boser
ist es richtig, das du aus x-ods-Files , ein-ods-file erstellen willst. Also mergen. Oder hab ich dich missverstanden.
mfg
boser
mfg
boser
linux suse 11.4 / 12.2 ; LibreOffice 3.4.2
boser
linux suse 11.4 / 12.2 ; LibreOffice 3.4.2
-
- Beiträge: 3
- Registriert: Fr, 29.10.2010 23:05
Re: datenexport aus mehreren ods-dateien in eine neue ODS-Datei
mit dem x bin ich zur Zeit bei 4
ich habe auch schon mit der Funiktion DDE probiert, aber da dauert das alles zu lange, daher die Idee die Daten per
Script auszulesen zu verarbeiten und in einer neuen Tabelle einzufügen
ich habe auch schon mit der Funiktion DDE probiert, aber da dauert das alles zu lange, daher die Idee die Daten per
Script auszulesen zu verarbeiten und in einer neuen Tabelle einzufügen
Re: datenexport aus mehreren ods-dateien in eine neue ODS-Datei
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
Win 7 SP1/ LibreOffice 3.4.2 OOO340m1 (Build:203) / Firefox 15.0.1 / Notebook ASUS K70IO 64 Bit-Betriebssytem
-
- Beiträge: 3
- Registriert: Fr, 29.10.2010 23:05
Re: datenexport aus mehreren ods-dateien in eine neue ODS-Datei
Vielen Dank turtle47
so ähnlich sollte es werde, aber statt der Formel möchte ich wirklich nur den Inhalt der Zellen haben
mycell2.formula= "=('" & dPath & "/" & sValue1 & "'#$Tabelle1.D8)" 'Wert aus Tabelle1 Zelle B8
Diese Zeile schreibt ja nur die Formel in die Zelle mycell2, kann ich den Wert denn auch als Integer auslesen
damit was machen und dann nur als Wert (Zahl oder Text, oder...) in eine neue Tabelle schreiben
Gruss
so ähnlich sollte es werde, aber statt der Formel möchte ich wirklich nur den Inhalt der Zellen haben
mycell2.formula= "=('" & dPath & "/" & sValue1 & "'#$Tabelle1.D8)" 'Wert aus Tabelle1 Zelle B8
Diese Zeile schreibt ja nur die Formel in die Zelle mycell2, kann ich den Wert denn auch als Integer auslesen
damit was machen und dann nur als Wert (Zahl oder Text, oder...) in eine neue Tabelle schreiben
Gruss
Re: datenexport aus mehreren ods-dateien in eine neue ODS-Datei
Wo hast Du denn eigentlich diesen Blödsinn gelesenuwanoremin hat geschrieben: Leider habe ich nicht's brauchbares im Netz gefunden, immer nur die Aussage, dass das nicht mit mehreren Dateien geht.

Ja, das geht so:uwanoremin hat geschrieben: kann ich den Wert denn auch als Integer auslesen
damit was machen und dann nur als Wert (Zahl oder Text, oder...) in eine neue Tabelle schreiben
Code: Alles auswählen
Sub Main
Dim sPath, fullPath As String
Dim r , iResult as Integer
Dim oDocument, thisDoc, oSheet, ocell1 as Object
sPath = "D:\Dein Ordner" & getpathseparator 'Ort der die Dateien enthält >> Pfad anpassen!
r = 1 'Startwert Zeile setzen
sFileName = Dir$(sPath & getPathSeparator() & "*", 0)
Do
fullPath = converttourl(sPath & sFileName)
sFileName = Dir$
'folgend Quelldokument im Hintergrund öffnen
dim myFileProp(0) as New com.sun.star.beans.PropertyValue
myFileProp(0).name = "Hidden"
myFileProp(0).value = true
oDocument = StarDesktop.loadComponentFromURL(fullPath, "_blank", 0, myFileProp())
'folgend Wert aus Quelldokument lesen und Wert berechnen
oSheet = oDocument.sheets(0) 'erstes Tabellenblatt des Quelldokumentes
iVal = osheet.getCellRangebyName("A5").value 'Integerwert auslesen
iResult = iVal * 5 'Berechnung
'folgend berechneten Wert in das Zieldokument schreiben
thisDoc = thisComponent 'Zieldokument ansprechen
oSheet = thisDoc.sheets(0) 'erstes Tabellenblatt der Zieldatei
ocell1 = osheet.getCellByPosition(0,r)'Spalte A , Zeile r
ocell1.value = iResult 'berechneten Wert eintragen
r = r + 1 'Zeile hochzählen
redim myFileProp
oDocument.close(true) 'Quelldokument schliessen
Loop Until sFileName = ""
msgbox "Der Vorgang ist abgeschlossen" ,64 , "Dateien auslesen"
End Sub
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
Win 7 SP1/ LibreOffice 3.4.2 OOO340m1 (Build:203) / Firefox 15.0.1 / Notebook ASUS K70IO 64 Bit-Betriebssytem