Zu doof für Export?

Hallo allerseits,

ich bin der neue in der Straße, gerade erst eingezogen und habe direkt eine Frage (oder eher ein Problem). Habe schon im Board geschaut aber nichts wirksames gefunden.

Ich möchte eine Excel-Liste mit bestimmten Infos meiner MP3's erstellen (und zwar in der Reihenfolge):

Album, Artist, Länge, Bitrate, Genre

Aber irgendwie klappt das nicht.

Habe folgende Einstellungen genommen (die sicherlich falsch sind):

$filename(csv,utf-16)Interpret,Album,Länge,Bitrate,Genre
$loop(%artist%)$loop(%album%,1)$loop(%time%,2)$loop(%bitrate%,3)$loop(%genre%,4)
%artist%,%album%,%time%,%bitrate%,%genre%
$loopend()$loopend()$loopend()$loopend()

Es werden nur die Bezeichnungen aus der ersten Zeile ausgegeben, aber die wiederum in einer Spalte. Hätte aber gerne jede "Kategorie" in einer Spalte...

was kann ich machen?

Besten dank sagt artig

Ragna

Ich verstehe zwar nicht so ganz, was du vorhast, aber wenn du die Daten sowieso in Excel importierst, dann kannst du ja auch die Excel Sortierfunktion und die Zellformate für die weitere Bearbeitung nutzen.

$filename(out.csv,utf-16)Titel,Interpret,Album,Länge,Bitrate,Genre,Dateiname
$loop(%_folderpath%%_filename_ext%)%title%,%artist%,%album%,%_length_seconds%,%_bitrate%,%genre%,%_filename%
$loopend()

Ergebnis:

Titel,Interpret,Album,Länge,Bitrate,Genre,Dateiname
Dream On,Aerosmith,Greatest Hits,267,192,Rock,01_DreamOn_Aerosmith_GH_1980.mp3

DD.20070215.1642

Hallo...

sorry, hab nicht gesehen dass jemand auf meinen Beitrag geantwortet hat. Irgendwie scheint das mit der automatischen Benachtrichtigung doch nicht so zu funktionieren.

Hab das mal so ausprobiert, aber leider wird das ganze immer noch in einer Spalte geschrieben. Zudem würde ich das ganze gerne in einer "normalen" Zeitformatierung ausgeben (hh:mm:ss)...wie wäre das zu realisieren?

Noch mal zum Verständnis:

Ich möchte einfach das in der Excel-Tabelle steht:

Spalte A: Album
Spalte B: Artist
Spalte C: Länge (hh:mm:ss)
Spalte D: Bitrate
Spalte E: Genre

trotzdem danke für die bisherige Hilfe

Liebe Grüße

Ragna

Hmm, ... neu in der Straße ja?
Kennst du dich denn mit Excel aus?
Es gibt da so Einstellmöglichkeiten beim Import von CSV Dateien, von wegen Komma oder Semikolon und so ... auch müsste Excel die Zeitformatierung als Zellformat beherrschen.

DD.20070216.2253

Also die Formatierung in Excel habe ich gefunden. Aber das soll ja auch direkt beim Export gehen...das würde dann nämlich den Schritt sparen. Ich muss einige CD's in die Tabelle reinbekommen, da wäre ich schon um den Schritt weniger dankbar...

Ich sage einmal etwas überspitzt:
Du solltest die Vorzüge von Mp3tag und Excel kombinieren, nicht deren Nachteile.

DD.20070217.0942

Edit:

Nachdem ich Excel bestimmt seit 5 Jahren nicht mehr angefasst habe, habe ich - dir zuliebe-, ein Excel 2007 installiert und siehe da, die neue MS Office Bequemlichkeit hat auch ihre Tücken.

Der Dateityp CSV wurde bei der Installation ungefragt automatisch mit Excel verknüpft.
Deshalb wird sofort Excel gestartet, wenn man nach der Ausführung des Exportskripts die Frage von Mp3tag beantwortet 'Soll die Exportdatei jetzt angezeigt werden'.

Nächste Überraschung.
Excel importiert das Mp3tag Exportergebnis automatisch nur in eine Spalte.
Excel hat also nicht erkannt, dass die Datei 'out.csv' eine Textdatei ist, die entsprechend CSV 'Comma Separated Value' formatiert ist.

Wir gehen den normalen Weg.
Wir benutzen in Excel den Dialog 'Datei öffnen' und öffnen die Datei 'out.csv'.
Es meldet sich der Textkonvertierungsassistent und sagt, er habe erkannt, 'dass ihre Daten mit Trennzeichen versehen sind'. So weit so gut.

Wir wählen aus 'Dateityp: Getrennt' und gehen weiter.

Auf der Assistentenseite 2 sehen wir, dass bei der Auswahl der Trennzeichen die Voreinstellung auf 'Tabstopp' steht.
Das könnte erklären, warum Excel eine echte CSV Datei automatisch falsch interpretiert.
Wenn wir nun als Trennzeichen das 'Komma' auswählen, zeigt der Assistent in der Datenvorschau die Daten sauber in Spalten an.

Auf der Assistentenseite 2 geht es um die Einstellung des Datenformats der einzelnen Spalten.
Wir lassen alles auf Standard und können nun die Textkonvertierung fertig stellen.

Jetzt haben wir unsere Daten im Excel Arbeitsblatt sauber in den Spalten verteilt.

Den Schritt Nr. 3 können wir uns komplett ersparen, wenn wir der 'tabstopp' Automatik von Excel 'zuspielen'.
Außerdem bereiten wir die Ausgabe der Spielzeitdauer vor für das Excel Zellformat 'Uhrzeit 37:30:55'.

Wir benutzen nun dieses Exportskript ...

$filename(Excel.tab.csv,utf-16)"Titel"$char(9)"Interpret"$char(9)"Album"$char(9)"Dauer"$char(9)"Bitrate"$char(9)"Genre"$char(9)"Dateiname"
$loop(%_folderpath%%_filename_ext%)"%title%"$char(9)"%artist%"$char(9)"%album%"$char(9)0:0:%_length_seconds%$char(9)%_bitrate%$char(9)"%genre%"$char(9)"%_filename_ext%"
$loopend()

(Achtung: Die Benutzung von '%_length%' ist nicht zu empfehlen, da Excel beim automatischen Konvertieren dafür das unpassende Zellformat 'hh:mm' einstellt.)

... und brauchen danach im Excel Arbeitsblatt die Spalte mit der Spielzeitdauer nur noch formatieren mit 'Uhrzeit 37:30:55' bzw. Benutzerdefiniert 'hh:mm:ss'.

Fertig.

DD.20070217.1050

Edit:
Da ist mir noch etwas aufgefallen:
Aus dem Artisten '7-7-0', als Text in der CSV Datei in Doppelapostrophe gesetzt "7-7-0", macht Excel den '07.07.2000'.
Man sollte deshalb alle Zellen, die Text enthalten, in Excel ausdrücklich als 'Text' formatieren, und besonders kontrollieren, ob auch alle Werte unverändert übernommen worden sind.

DD.20070127.1544

mmhh..

Ich kenne jetzt nur die MEthode die ganze Datei zu importieren...gibt es auch noch eine andere?

Danke

Ragna

Ist das jetzt hier deine Reaktion auf meinen Beitrag zuvor (siehe Edit: ...) oder eine wirklich neue Frage? Dann bitte noch etwas näher erläutern: 'gibt es auch noch eine andere'.

DD.20070217.1059

Also...

wenn ich die excel-Datei, die Mp3Tag erstellt hat, in excel reinlade, steht ja noch alles in einer Spalte drinn.

Die einzige Möglichkeit die ich gefunden habe ist die Datei zu importieren, und dann alles nach dem ";" auflösen zu lassen. Nur ist das schon ein wenig umständlich. Daher war die Frage nach einer Möglichkeit das ganze innerhalb der Datei - wenn diese also normal geöffnet wird - zu "sortieren"...

Besser ? :wink:

Gruß

Ragna

Beim Import von CSV Dateien in Excel sind mir noch andere Dinge aufgefallen, über die man trotz oder wegen der Automatik stolpern kann.

Die Tracknummer sollte nicht im Format 'nn/mm' übergeben werden, weil die Excel Automatik das als Datum der Form 'MM/JJ' interpretiert (siehe Bild 1).
Besser ist es, die Tracknummer in zwei Werten getrennt zu übergeben.

Die Spielzeitdauer sollte schon im aufbereiteten Format übergeben werden, weil die Excel Automatik daraus dann eine Zeitangabe erkennt und das manuelle Formatieren im Excel Arbeitsblatt entfällt (siehe Bild 2).

Wenn bei der Herstellung der CSV Datei mit Mp3tag mittels der Funktion $filename(name[,enc]) die Codierung der Exportdatei auf 'ANSI' gesetzt wird, dann kann das Semicolon als Separator benutzt werden und Excel trennt automatisch die Spalten (siehe MTE Datei). Außerdem werden die Umlaute dann lesbar übernommen.

$filename(Mp3tag.Export.semicolon.csv,ANSI)"Titel";"Interpret";"Album";"Track";"Tracktotal";"Jahr";"Dauer";"Größe MB";"Geändert";"Pfad";"Dateiname";
$loop(%_path%)"%title%";"%artist%";"%album%";$num(%track%,1);%_total%;"%year%";%_length%;%_file_size_mb%;%_file_mod_date%;"%_folderpath%";"%_filename_ext%"
$loopend()



Export.CSV.semicolon.Excel.mte (319 Bytes)

DD.20070220.1517

Skript Variante mit Ausgabe von UNSYNCEDLYRICS:

$filename(Mp3tag.Export.semicolon.csv,ANSI)'"'Titel'";"'Interpret'";"'Album"';"'Track'";"'Tracktotal'";"'Jahr'";"'Dauer'";"'Größe MB'";"'Geändert'";"'Verzeichnispfad'";"'Dateiname'";"'Lyrics'"'
$loop(%_path%)'"'%title%'";"'%artist%'";"'%album%'";'$num(%track%,1)';'%_total%';"'%year%'";'%_length%';'%_file_size_mb%';'%_file_mod_date%';"'%_folderpath%'";"'%_filename_ext%'";"'$replace(%unsyncedlyrics%,$char(13),'{r}',$char(10),'{n}',$char(9),'{t}')'"'
$loopend()

Im Lyricstext eventuell enthaltene Carriage Return, Line Feed und Tabulator Zeichen werden automatisch umgewandelt in Steuerzeichen-Platzhalter, die gegebenenfalls später wieder zurückverwandelt werden können in funktionierende Steuerzeichen.

Siehe auch:
Export multiline fields into csv or xls
Export in csv

DD.20100825.1715.CEST

Export.CSV.semicolon.Excel.mte (319 Bytes)



Wer sich zum Thema CSV / SSV / TSV informieren will, dem sind diese Quellen empfohlen ...

Common Format and MIME Type for Comma-Separated Values (CSV) Files
http://tools.ietf.org/html/rfc4180#section-2

CSV (Dateiformat)
http://de.wikipedia.org/wiki/CSV_(Dateiformat)

Comma-separated values
http://en.wikipedia.org/wiki/Comma-separated_values

DD.20090930.1730.CEST

The Comma Separated Value (CSV) File Format
http://www.creativyst.com/Doc/Articles/CSV/CSV01.htm

CSVed is an easy and powerful CSV file editor, you can manipulate any CSV file, separated with any separator.
http://csved.sjfrancke.nl/index.html

DD.20100319.1643.CET