¿Cómo puedo importar hojas de Excel que harán referencia al nombre del libro de Excel cuando se importen a JMP?Tengo un montón de archivos de Excel, con un valor de aproximadamente 2 años, que se compilan mensualmente. Me gustaría importar una hoja de cada libro a JMP. Desafortunadamente, solo se hace referencia a la fecha y hora en el título de cada libro y no en ninguna parte de las hojas que deseo importar. ¿Existe alguna forma de importar el título del libro con la hoja?
Gracias
Acceso a los datosRe: ¿Cómo puedo importar hojas de Excel que hagan referencia al nombre del libro de Excel cuando se importen a JMP?Si entiendo lo que quiere, definitivamente puede escribir un script JSL que sea capaz de manejarlo. El aspecto que debería tener el script JSL y lo que debería hacer depende en gran medida de los datos que tenga y de cómo se creen.
Lo más probable es que necesite al menos Files In Directory(), For loop (o tal vez incluso mejor For Each), Open() y luego algunas funciones de manipulación de cadenas/tabla de datos.
Re: ¿Cómo puedo importar hojas de Excel que hagan referencia al nombre del libro de Excel cuando se importen a JMP?Hola @Wendy_Murphrey ,
Disculpas por revivir una conversación terminada, pero tengo una consulta de naturaleza similar.
Al igual que Fiona, tengo una gran cantidad de archivos de Excel desde los cuales transfiero datos a JMP para su análisis. Hasta hace poco, he estado haciendo esto de una manera muy medieval: abrí los archivos de Excel manualmente y copié la información relevante directamente en las tablas JMP. Si bien esto es sostenible, creo que la función de importación (junto con la concatenación para agregar a tablas de datos existentes) es una solución a largo plazo mucho mejor para mejorar la eficacia.
En cuanto a Fiona, mi información relevante se encuentra en la Hoja 4 de cada libro y está etiquetada como "ciclo". Necesito importar entre 4 y 20 libros de este tipo a la vez, con los que actualizar mis tablas JMP. Cada libro tiene un título de cadena, normalmente de 8 caracteres. Este es un identificador único del objeto que se está probando.
Mis preguntas son estas: ¿es posible para mí reemplazar el nombre de la tabla generada al importar (por ejemplo, ahora mismo si importo 8 archivos, las tablas generadas en JMP son "ciclo", "ciclo 2", "ciclo 3", etc.)? .) ¿Son los títulos de los libros de Excel originales (que en este ejemplo se convierten en "libro de trabajo 1", "libro de trabajo 2", "libro de trabajo 3", etc.)?
Mi siguiente pregunta es sobre la concatenación. ¿Es posible para mí escribir una secuencia de comandos que pueda analizar una celda específica (por ejemplo, la generada por su secuencia de comandos, que copia el título del libro en una columna específica al importar) y luego usar el valor dentro de esa celda para agregar? ¿La información de las columnas restantes a una tabla JMP existente?
Para aclarar, imaginemos que estoy probando un objeto, en este caso denominado "A71320". Tengo una tabla de datos JMP también llamada "A71320", que es una compilación de todos mis datos relevantes para este objeto de prueba. Cada nueva prueba genera un archivo de Excel, también denominado "A71320". Me gustaría importar este archivo usando su script. Si entiendo correctamente, copiará todos los datos de la hoja 4, "ciclo", creará una nueva tabla JMP, denominada "ciclo", y luego, dentro de esta nueva tabla, creará una nueva columna con 1 celda completa, "A71320". . Luego me gustaría ejecutar un script que verá esta celda "A71320", reconocerá una tabla existente dentro de JMP llamada "A71320" y agregará toda la información excepto la celda titular, desde "ciclo" hasta "A71320". es posible?
Mi más sincero agradecimiento por tomarse el tiempo de leer esta pregunta.
Antílope
Re: ¿Cómo puedo importar hojas de Excel que hagan referencia al nombre del libro de Excel cuando se importen a JMP?¡Impresionante!Re: ¿Cómo puedo importar hojas de Excel que hagan referencia al nombre del libro de Excel cuando se importen a JMP?@fionaweston Parece que el control sobre la importación de pestañas para hojas de Excel sería una mejora útil de JMP. Encontré que esta solicitud estaba en el Lista de deseos de JMP - ¡Dale un voto positivo y es posible que veamos esta mejora en JMP en el futuro!
Mientras tanto, sus colegas de JMP anteriores le han proporcionado una buena solución JSL para ayudarle.
Mejor,
jeff
Re: ¿Cómo puedo importar hojas de Excel que hagan referencia al nombre del libro de Excel cuando se importen a JMP?gracias wendyRe: ¿Cómo puedo importar hojas de Excel que hagan referencia al nombre del libro de Excel cuando se importen a JMP?La respuesta de Wendy muestra una forma sencilla de agregar la columna de origen a medida que se crea la importación de múltiples archivos.
Usar Archivos en Directorio() para obtener los archivos, y luego un simple bucle For() leyendo un archivo tras otro, con cada uno agregando la columna como lo ilustra Wendy, es un enfoque muy simple de usar.
Re: ¿Cómo puedo importar hojas de Excel que hagan referencia al nombre del libro de Excel cuando se importen a JMP?Jeff,
La importación de varios archivos tiene la función que necesito y que usted ha resaltado (agregue una columna de nombre de archivo, que necesito porque el nombre de cada libro contiene la fecha, por ejemplo, "Métricas del 21/04"). Sin embargo, cuando uso la Importación de archivos múltiples solo me devolverá la primera hoja de cada libro y necesito la tercera hoja de cada uno de los libros. ¿Hay alguna manera de obtener la tercera hoja de cada libro mediante la Importación de archivos múltiples? Tengo unos 20 libros de trabajo.
En cambio,
Usando Archivo/Abrir, puedo llamar a la hoja de trabajo correcta (hoja 3) de cada libro. Ahora tengo 20 hojas de trabajo correctas, pero no puedo decir de qué fecha provienen porque este método no tiene una opción para crear una columna de origen.
Gracias
Fiona
Re: ¿Cómo puedo importar hojas de Excel que hagan referencia al nombre del libro de Excel cuando se importen a JMP?@fionaweston ¿Cómo estás importando estas hojas? La importación de archivos múltiples tiene una casilla de verificación para agregar nombres de archivos a una columna que se agrega a la tabla de datos final. Puede crear una columna de tabla de datos similar si está concatenando archivos manualmente utilizando la plataforma Concatenate. El nombre de archivo de cada hoja importada será el título del archivo que, según su descripción, debe incluir la marca de tiempo del archivo.


Re: ¿Cómo puedo importar hojas de Excel que hagan referencia al nombre del libro de Excel cuando se importen a JMP?Hola, @fionaweston .
Suponiendo que está utilizando JSL para importar los datos, puede almacenar el nombre del archivo (o cualquier parte del nombre del archivo) en una variable que podría usarse para completar una nueva columna.
filepath = "$SAMPLE_IMPORT_DATA/Team Results.xlsx";
file = Word( -2, filepath, "/." );<BR />
dt = Open(
filepath,
Worksheets( "Grouped Team Results" ),
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( 3 ),
Data Starts on Row( 4 ),
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( "Workbook Name", Character, Set Each Value( file ) );
Alternativamente, puede colocar automáticamente la información deseada directamente en el archivo de Excel.Ver esta publicación para obtener instrucciones.
Espero que ayude.
Re: ¿Cómo puedo importar hojas de Excel que hagan referencia al nombre del libro de Excel cuando se importen a JMP?La función Open() para abrir libros de Excel tiene un elemento llamado "Hojas de trabajo" que se puede configurar dentro de la función abierta.A continuación se tomó de la entrada "Fuente" para una entrada de hoja de trabajo en JMP.Muestra el nombre de la hoja de trabajo para leer.
hojas de trabajo( "Hoja1")
Open(
"$DOCUMENTS/Discussion Group/Data wrangling .xlsx",
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( 1 ),
Data Starts on Row( 2 ),
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( "-" )
)
)