Hey owni,
woran scheiterst du denn? Am Öffnen der Dateien, am Schreiben der Daten? Oder an was?
Das ist eigentlich eine einfache Aufgabe:
Die aktuelle URL liefert dir den aktuellen Verzeichnisnamen.
Dann nutzt du den Service css.ucb.SimpleFileAccess, dort die Methode getFolderContent(). Jetzt hast du in einem Array alle Dateinamen mit Pfad.
Jetzt durchläufst du eine Schleife über alle Array-Elemente und prüfst, ob die Dateiendung "ods" oder "swx" ist und wenn ja und wenn die Datei nicht die derzeit geöffnete Datei ist, dann öffnest du die Datei (am bsten "Hidden"), liest den Wert aus, schliesst die Datei wieder und schreibst den Wert an die gewünschte Position der aktuellen Datei. Und weiter zur nächsten Datei...
Gruss
Thomas
Makro für Ordnerdurchsuchung
Moderator: Moderatoren
Re: Makro für Ordnerdurchsuchung
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
Re: Makro für Ordnerdurchsuchung
Hey owni,
na ja, viel hast du ja nicht hinbekommen
Kennst du überhaupt die Grundlagen? Wenn nicht, schau dir mal die IDL an - und dort den Service SimpleFileAccess.
Zum Thema: so:
Hoffe, es hilft dir.
Gruss
Thomas
na ja, viel hast du ja nicht hinbekommen

Kennst du überhaupt die Grundlagen? Wenn nicht, schau dir mal die IDL an - und dort den Service SimpleFileAccess.
Zum Thema: so:
Code: Alles auswählen
Sub Ordnerdurchsuchung
Dim Test()
Dim oSimpleFileAccess
dim sURL as string
sURL = ConvertToUrl("D:\meineDaten\meinPfad\oderwasauchimmer")
oSimpleFileAccess=createunoservice("com.sun.star.ucb.SimpleFileAccess")
Test() = oSimpleFileAccess.getFolderContent(sUrl, false)
for i = 0 to uBound(test())
s = s & test(i) & chr(13)
next
msgbox s
End sub
Gruss
Thomas
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
- komma4
- ********
- Beiträge: 5332
- Registriert: Mi, 03.05.2006 23:29
- Wohnort: Chon Buri Thailand Asia
- Kontaktdaten:
Re: Makro für Ordnerdurchsuchung
siehe den ersten sticky thread im BASIC-Forumsbereich.
IDL interface definition language.
Toxitom meint wahrscheinlich, dass Du Dir den DevelopersGuide inkl. SDK herunterladen solltest, wenn Du Basic programmierst.
Gute Quellen zum Lernen sind die Beispiele auf http://www.ooomacros.org und der Extension Website. Oder auch die "FAQ" bei http://www.dannenhoefer.de - oder die Beispiele auf meiner Site. Für mich ein MUSS: die zwei Dokumente von Andrew Pitonyak zu "Basic" und "Base" (über http://www.pitonyak.org erreichbar)
Deine Fehlermeldung lässt darauf schliessen, dass das SFO nicht richtig erzeugt wurde....
IDL interface definition language.
Toxitom meint wahrscheinlich, dass Du Dir den DevelopersGuide inkl. SDK herunterladen solltest, wenn Du Basic programmierst.
Gute Quellen zum Lernen sind die Beispiele auf http://www.ooomacros.org und der Extension Website. Oder auch die "FAQ" bei http://www.dannenhoefer.de - oder die Beispiele auf meiner Site. Für mich ein MUSS: die zwei Dokumente von Andrew Pitonyak zu "Basic" und "Base" (über http://www.pitonyak.org erreichbar)
Deine Fehlermeldung lässt darauf schliessen, dass das SFO nicht richtig erzeugt wurde....
Cheers
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
Re: Makro für Ordnerdurchsuchung
Hey Owni,
hmm, die Fehlermeldung besagt, dass eben etwas "faul" ist - die Methode heisst exakt:
getFolderContents()
Tia, und ohne "s" funktioniert es halt nicht
Sorry, ich hatte es nicht detailliert überprüft - alles "on the Fly".
Die IDL kannst du auch direkt im Internet abrufen - das ist sie meist aktuell. Hier der Link:
http://api.openoffice.org/docs/common/r ... le-ix.html
Gruss Thomas
hmm, die Fehlermeldung besagt, dass eben etwas "faul" ist - die Methode heisst exakt:
getFolderContents()
Tia, und ohne "s" funktioniert es halt nicht

Sorry, ich hatte es nicht detailliert überprüft - alles "on the Fly".
Die IDL kannst du auch direkt im Internet abrufen - das ist sie meist aktuell. Hier der Link:
http://api.openoffice.org/docs/common/r ... le-ix.html
Gruss Thomas
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
- komma4
- ********
- Beiträge: 5332
- Registriert: Mi, 03.05.2006 23:29
- Wohnort: Chon Buri Thailand Asia
- Kontaktdaten:
Re: Makro für Ordnerdurchsuchung
Kommt auf die Datei und den Zweck an, den Du verfolgstowni hat geschrieben:Öffnen der Dateien! Welche Befehle nimm ich da am besten her
UNO: .loadFromURL
BASIC: LINE INPUT und INPUT
UNO: com.sun.star.ucb.SimpleFileAccess
Lesen:owni hat geschrieben:und wie kommt man da am besten drauf? =)
F1 OOo Hilfe, OpenOffice.org Basic : Datei-Ein/Ausgabefunktionen
Developer's Guide
Beispiele in Foren
Beispiele in Makrocode veröffentlicher Makros:
* http://www.ooomacros.org
* http://www.dannenhoefer.de
* http://www.pitonyak.org
usw.
Cheers
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)