Babaganoush
Mitglied
Thread Starter
- Dabei seit
- 19.06.2007
- Beiträge
- 175
- Reaktionspunkte
- 2
Hallo,
ich habe ein Riesenproblem:
Ich habe unzählige Ordner in denen jeweils knapp 70 *.csv Dateien liegen.
Diese 70 sollen in einer Excel/Numbers Tabelle Zusammengefasst werden. Die CSV Dateien sind dabei stets gleich Aufgebaut.
Ich habe bereits ein "halbes script" geschrieben bzw. mir zusammengebastelt.
Dass Problem ist allerdings, dass ich z.Z. noch das Skript für jede Datei neu anwerfen muss, es fehlt also eine Schleife. Kann mir da jemand ein bisschen helfen?
Die Dateien liegen immer im gleichen Ordner und sind folgendermaßen bezeichnet:
report.csv
report-1.csv
report-2.csv
...
Zweites Problem:
Das Skript bricht den Vorgang ab und schreibt nur bis zu einer bestimmten Stelle die Sachen in die Tabelle, wieso weiß ich leider nicht. Deswegen habe ich als Notbehelf die Zeichenanzahl begrenzt, dadurch bricht das Skript nur noch in der Hälfte der Fälle ab.
Drittes Problem :
Aktuell wird für jede Datei eine neue Tabelle in der Aktuellen Arbeitsmappe angelegt, ist es auch möglich alles in der gleichen Tabelle fortlaufend untereinander zu schreiben?
Hier mal mein bisheriger Code:
Anbei auch mal zwei Beispieldateien. Bei der ersten bricht das Script stets ab, wobei es mir nur auf die Tagesdaten ankommt, alles davor und danach soll eh wegbleiben. Die zweite Datei funktioniert ohne Fehler.
Ich wäre euch wirklich suuuper dankbar wenn ihr mir helfen könntet
ich habe ein Riesenproblem:
Ich habe unzählige Ordner in denen jeweils knapp 70 *.csv Dateien liegen.
Diese 70 sollen in einer Excel/Numbers Tabelle Zusammengefasst werden. Die CSV Dateien sind dabei stets gleich Aufgebaut.
Ich habe bereits ein "halbes script" geschrieben bzw. mir zusammengebastelt.
Dass Problem ist allerdings, dass ich z.Z. noch das Skript für jede Datei neu anwerfen muss, es fehlt also eine Schleife. Kann mir da jemand ein bisschen helfen?
Die Dateien liegen immer im gleichen Ordner und sind folgendermaßen bezeichnet:
report.csv
report-1.csv
report-2.csv
...
Zweites Problem:
Das Skript bricht den Vorgang ab und schreibt nur bis zu einer bestimmten Stelle die Sachen in die Tabelle, wieso weiß ich leider nicht. Deswegen habe ich als Notbehelf die Zeichenanzahl begrenzt, dadurch bricht das Skript nur noch in der Hälfte der Fälle ab.
Drittes Problem :
Aktuell wird für jede Datei eine neue Tabelle in der Aktuellen Arbeitsmappe angelegt, ist es auch möglich alles in der gleichen Tabelle fortlaufend untereinander zu schreiben?
Hier mal mein bisheriger Code:
Code:
display dialog "Datei angeben:" default answer "Macintosh HD:Users:Ich:Downloads:Temp:report-1.csv"
set Datei to text returned of result
tell application "Numbers"
activate
tell document (count of documents)
tell sheet 1
tell application "Finder"
set quoteLines to paragraphs of (read file Datei from 1 to 530)
end tell
set quoteValues to {}
set nRows to length of quoteLines
set tempLine to item 1 of quoteLines
set oldDelims to AppleScript's text item delimiters
set AppleScript's text item delimiters to ","
set headers to every text item of tempLine
set nCols to length of headers
make new table with properties {name:"Daten", row count:36, column count:2}
tell table (count of tables)
set nRow to 1
repeat with aLine in quoteLines
set cellValues to every text item of aLine
set nCol to 1
repeat with aCell in cellValues
set value of cell nCol of row nRow to aCell
set nCol to nCol + 1
end repeat
set nRow to nRow + 1
end repeat
end tell
set AppleScript's text item delimiters to oldDelims
end tell
end tell
end tell
Anbei auch mal zwei Beispieldateien. Bei der ersten bricht das Script stets ab, wobei es mir nur auf die Tagesdaten ankommt, alles davor und danach soll eh wegbleiben. Die zweite Datei funktioniert ohne Fehler.
Ich wäre euch wirklich suuuper dankbar wenn ihr mir helfen könntet