Beziehen Sie den Dateinamen in den Excel-Import einGibt es eine Möglichkeit, eine Spalte mit dem Dateinamen in eine importierte Excel-Tabelle aufzunehmen? Bei Verwendung des Tools zum Importieren mehrerer Dateien gibt es eine Option, dies einzubeziehen, aber ich habe beim Importieren einer einzelnen Datei kein Äquivalent gefunden.
Ich habe versucht, „Get Path/Get Name“ zu verwenden und das dann in eine Spalte zu schreiben, aber das gibt mir nur „Sheet1.jmp“.
Der von mir verwendete Befehl „Öffnen“ wurde vom Assistenten kopiert:
dtt.file= Pick File(); // Opens File dialogue
Open(
dtt.file,
Worksheets( "Sheet1" ),
Use for all sheets( 1 ),
Concatenate Worksheets( 0 ),
Create Concatenation Column( 0 ),
Worksheet Settings(
1,
Has Column Headers( 1 ),
Number of Rows in Headers( 2 ),
Headers Start on Row( 1 ),
Data Starts on Row( 3 ),
Data Starts on Column( 1 ),
Data Ends on Row( 0 ),
Data Ends on Column( 0 ),
Replicated Spanned Rows( 1 ),
Replicated Spanned Headers( 0 ),
Suppress Hidden Rows( 1 ),
Suppress Hidden Columns( 1 ),
Suppress Empty Columns( 1 ),
Treat as Hierarchy( 0 ),
Multiple Series Stack( 0 ),
Import Cell Colors( 0 ),
Limit Column Detect( 0 ),
Column Separator String( "-" )
);
);
DatenzugriffBetreff: Dateinamen beim Excel-Import angebenVielen Dank für diese Lösung.
Ich hatte ein ähnliches Problem und musste es in eine Schleife einfügen, um mehrere Excel-Dateien zu öffnen.
Names Default To Here( 1 );
path = Pick Directory( "Select a directory" );
file_list = Files In Directory(path, recursive);
for(i = 1, i <= N Items(file_list), i++,
filename = path||file_list[i];
dt = Open(
filename,
Worksheets( "Sheet1" ),
Use for all sheets( 1 ),
Concatenate Worksheets( 0 ),
Create Concatenation Column( 0 ),
Worksheet Settings(
1,
Has Column Headers( 1 ),
Number of Rows in Headers( 1 ),
Headers Start on Row( 41 ),
Data Starts on Row( 42 ),
Data Starts on Column( 1 ),
Data Ends on Row( 54 ),
Data Ends on Column( 20 ),
Replicated Spanned Rows( 1 ),
Replicated Spanned Headers( 0 ),
Suppress Hidden Rows( 1 ),
Suppress Hidden Columns( 1 ),
Suppress Empty Columns( 1 ),
Treat as Hierarchy( 0 ),
Multiple Series Stack( 0 ),
Import Cell Colors( 0 ),
Limit Column Detect( 0 ),
Column Separator String( "-" )
)
);
dt << New Column ("Filename", Character, "Nominal", << Set Each Value(Word(-1, file_list[i], "/")));
);Betreff: Dateinamen beim Excel-Import angebenDanke schön! Die Verwendung des Folgenden hat für das, was ich erreichen wollte, funktioniert:
dt << New Column("Filename", Character, "Nominal", << Set Each Value(Word(-1, dtt.file, "/")));
Betreff: Dateinamen beim Excel-Import angebenIch bin mir nicht sicher, ob es direkte Lösungen wie beim Import mehrerer Dateien gibt, aber Sie können eine neue Spalte erstellen, nachdem Sie die Daten geladen haben.
Im Folgenden finden Sie zwei Möglichkeiten, dies zu tun: eine mithilfe des ausgewählten Dateipfads und eine andere mithilfe des Tabellennamens (dies kann durch den Blattnamen beeinflusst werden):
Names Default To Here(1);
dtt.file= Pick File(); // Opens File dialogue
dt = Open(
dtt.file,
Worksheets( "Sheet1" ),
Use for all sheets( 1 ),
Concatenate Worksheets( 0 ),
Create Concatenation Column( 0 ),
Worksheet Settings(
1,
Has Column Headers( 1 ),
Number of Rows in Headers( 2 ),
Headers Start on Row( 1 ),
Data Starts on Row( 3 ),
Data Starts on Column( 1 ),
Data Ends on Row( 0 ),
Data Ends on Column( 0 ),
Replicated Spanned Rows( 1 ),
Replicated Spanned Headers( 0 ),
Suppress Hidden Rows( 1 ),
Suppress Hidden Columns( 1 ),
Suppress Empty Columns( 1 ),
Treat as Hierarchy( 0 ),
Multiple Series Stack( 0 ),
Import Cell Colors( 0 ),
Limit Column Detect( 0 ),
Column Separator String( "-" )
);
);
dt << New Column("Filename", Character, "Nominal", << Set Each Value(Word(-1, dtt.file, "/")));
dt << New Column("Filename", Character, "Nominal", << Set Each Value(dt << Get Name()));Weitere Informationen zu den Funktionen, insbesondere zu Word(), finden Sie im Skriptindex.