Incluir el nombre del archivo en la importación de Excel¿Hay alguna forma de incluir una columna con el nombre del archivo en una tabla de Excel importada? Usando la herramienta de importación de archivos múltiples, hay una opción para incluir esto, pero no he encontrado el equivalente al importar un archivo singular.
Intenté usar get path/get name y luego escribir eso en una columna, pero eso solo me da "Sheet1.jmp".
El comando Abrir que utilicé fue copiado del asistente:
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( "-" )
);
);
Tabla de datossecuencias de comandosRe: Incluir el nombre del archivo en la importación de ExcelGracias por esta solución.
Tuve un problema similar y necesitaba ponerlo en un bucle para abrir varios archivos de Excel.
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], "/")));
);Re: Incluir el nombre del archivo en la importación de Excel¡Gracias! Usar lo siguiente funcionó para lo que estaba tratando de lograr:
dt << New Column("Filename", Character, "Nominal", << Set Each Value(Word(-1, dtt.file, "/")));
Re: Incluir el nombre del archivo en la importación de ExcelNo estoy seguro de si hay soluciones directas como en la Importación de archivos múltiples, pero puede crear una nueva columna después de haber cargado los datos.
A continuación hay dos formas de hacerlo, una usando la ruta del archivo seleccionado y otra usando el nombre de la tabla (esto podría verse afectado por el nombre de la hoja):
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()));Consulte Índice de secuencias de comandos para obtener más información sobre las funciones, especialmente Word().