Ganz vergessen, Beispielsausgabe:

C:\Users\Administrator>test4kurs.rex
SysFileTree:
filespec: C:\Users\Administrator\*.xlsx
opts    : FO (files only, fully qualifed)

found   : 5 Datei(en)
         # 1: C:\Users\Administrator\crypto3_00_2021_14_00_59.xlsx
         # 2: C:\Users\Administrator\crypto3_02_2021_14_02_22.xlsx
         # 3: C:\Users\Administrator\G7T4_ooRexx.xlsx
         # 4: C:\Users\Administrator\Laenderuebersicht.xlsx
         # 5: C:\Users\Administrator\samp09_ooRexx.xlsx
---

command : dir /b "C:\Users\Administrator\*.xlsx"

found   : 5 Datei(en)
         # 1: crypto3_00_2021_14_00_59.xlsx
         # 2: crypto3_02_2021_14_02_22.xlsx
         # 3: G7T4_ooRexx.xlsx
         # 4: Laenderuebersicht.xlsx
         # 5: samp09_ooRexx.xlsx

MFG

On 23.05.2022 18:43, Rony G. Flatscher wrote:

Liebe TeilnehmerInnen,

wie heute versprochen (auch als Attachment) ein Programm, das die Suche nach Excel-Dateien mit SysFileTree() bzw. als "dir /b"-Kommando veranschaulicht:

   -- durchzusuchendes Verzeichnis:
dir    = directory() -- aktuelles Verzeichnis (kann geändert werden)

muster = "*.xlsx"    -- Suchmuster für alle Excel-Dateien


   -- sysFileTree(): vgl. rexxref.pdf, 8.22. SysFileTree
filespec = dir"\"muster
opts     = "FO"      -- nur Dateien suchen, vollqualifzierter Pfad
say "SysFileTree:"
say "filespec:" filespec
say "opts    :" opts "(files only, fully qualifed)"
say

call sysFileTree filespec, "files.", opts

say "found   :" files.0 "Datei(en)"
do i=1 to files.0
   say "09"x "#" i":" files.i -- "09"x ist hexadezimale Zeichenkette für Tabulatorzeichen
end
say "---"
say

   -- vgl. Foliensatz 060_ooRexx
command = "dir /b" quote(filespec)  -- sicherheitshalber Dateinamen in doppelete Anführungszeichen!
say "command :" command
say
arrRes  = .array~new
address system command with output using (arrRes)

say "found   :" arrRes~items "Datei(en)"
do i=1 to arrRes~items
   say "09"x "#" i":" arrRes[i]  -- "09"x ist hexadezimale Zeichenkette für Tabulatorzeichen
   -- alternatively, prepend each unqualified filename with directory():
   -- say "09"x "#" i":" dir"\"arrRes[i]  -- "09"x ist hexadezimale Zeichenkette für Tabulatorzeichen
end


::routine quote      -- Zeichenkette in doppelte Anführungszeichen
  return '"' || arg(1) || '"'

URL zu OLEInfo und dem zip-Archiv von Lee Peedin (u.a. mit Excelbeispielen):

<https://wi.wu.ac.at/rgf/wu/lehre/autowin/material/resources>

URL zu den Folien (Achtung Nummerierung wird sich, wie heute angekündigt, noch bei einigen auf drei numerische Stellen am Anfang ändern):

<https://wi.wu.ac.at/rgf/wu/lehre/slides/BusinessProgramming>

Viel Erfolg beim Arbeiten am Projekt!

Mit freundlichem Gruß

Rony G. Flatscher

-- 
--
__________________________________________________________________________________

Prof. Dr. Rony G. Flatscher
Department Wirtschaftsinformatik und Operations Management
Institut für Wirtschaftsinformatik und Gesellschaft
D2c 2.086
WU Wien
Welthandelsplatz 1
A-1020  Wien/Vienna, Austria/Europe

http://www.wu.ac.at
__________________________________________________________________________________