Hola,
¿Hay alguna manera de modificar un archivo EXCEL existente (una sola fila en particular) y guardarlo nuevamente en la carpeta original desde jmp?
Cualquier ayuda sería apreciada.
¡Gracias!
Si está utilizando el sistema operativo Windows y conoce un poco de VBscript, puede hacerlo usando Ejecutar programa.
El script adjunto usa wscript (hasta donde yo sé, siempre en el sistema operativo Windows). Abre Big Class y luego lo guarda como Excel para emular un libro de Excel existente.
El VBscript simple cambia el valor de la fila E3 y colorea la celda de amarillo. Este script utiliza JSL para escribir el VBscript; sin embargo, el script podría existir y simplemente ejecutarse desde JMP o desde muchos otros métodos.
JMP usa wscript para ejecutar el VBscript que se guardó. Esta es una opción para actualizar un libro y no perder las otras características de Excel.
Con el ánimo de enseñar a pescar en lugar de repartir pescado, les indicaré la dirección correcta. El primer paso es dejar que JMP escriba el script para importar la tabla. Importe uno de sus archivos de Excel manualmente, utilizando el Asistente de importación de Excel si es necesario. La tabla resultante tendrá un script titulado "Fuente" que contiene el script para importar el archivo de Excel. Podría verse algo como esto:
Open(
"filename.xlsx",
Worksheets( "Sheet 1" ),
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( "-" )
)
);
Este es el comienzo de tu propio guión. Cópielo en una ventana de secuencia de comandos. Para poner un identificador en la tabla de datos del archivo Excel importado, simplemente coloque un " = " antes de "Open(".
A continuación, debe realizar cualquier modificación en el contenido de la tabla. Puede acceder a un valor específico en la fila y columna deseada y establecer el valor usando algo como esto:
dt:<COLNAME>[<ROW number="">] =<DESIRED value=""></DESIRED></ROW></COLNAME>
Si el nombre de la columna tiene caracteres especiales, utilice dt:Name(" ")[ ].
Por último, debe exportar los resultados. Hay algunas otras publicaciones en la comunidad que le guiarán en cómo guardar una tabla JMP en formato .xlsx. Aquí hay uno reciente: https://community.jmp.com/t5/Discussions/Saving-Data-Table-to-Excel-format/td-p/40392
Le recomiendo encarecidamente que intente unir las piezas usted mismo. Esa es la única manera de dominar las secuencias de comandos. Si te quedas atascado en alguna parte en particular, estamos aquí para ayudarte.
Estoy buscando un script JSL que me permita hacer esto.
Puede importar el archivo de Excel, modificarlo y luego exportarlo nuevamente a un formato xlsx, pero al hacerlo perderá cualquier funcionalidad específica de Excel. Esto solo funcionaría si tuviera una hoja de cálculo con solo encabezados de columna y datos sin fórmulas, formatos especiales, etc.