<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Hola. Me gustaría ejecutar JSL desde VB.
Estoy tratando de combinar un conjunto de columnas de 2 caracteres en una columna de un solo carácter "X", con cada campo separado por un espacio ("").
En la interfaz de usuario JMP, seleccionaría las 2 columnas en la tabla de datos y luego iría a Cols> Utilidades> Combinar columnas .
¿Alguien puede aconsejar por qué el código de abajo no funciona?
Me sale el siguiente error:
Nombre no resuelto: jmp_dt en acceso o evaluación de 'jmp_dt', jmp_dt / * ### * /
Dim jmp_app As JMP.Application
Dim jmp_doc As JMP.Document
Dim jmp_dt As JMP.DataTable
Dim str como String
Establecer jmp_app = CreateObject ("JMP.Application")
jmp_app.Visible = True
Establecer jmp_doc = jmp_app.OpenDocument ("C: \ Archivos de programa \ SAS \ JMP \ 12 \ Samples \ Data \ Big Class.jmp")
Establecer jmp_dt = jmp_doc.GetDataTable
str = "Combinar columnas (delimitador (" "" ""), Columnas (: sexo,: edad), Nombre de columna ("" X "")); "
jmp_dt.JSLFunction (str)
Después de leer otros hilos de la Comunidad de usuarios de JMP, aprendí sobre Tabla de datos actual función.
Esta función permite que JSL haga referencia a una tabla que ya está abierta (en mi caso, fue abierta por Visual Basic), y ahora mi código funciona.
Aquí están mis últimas 2 líneas de código revisadas:
str = "dt = Tabla de datos actuales ();" & _
"dt << Combine Columns (Delimitador (" "" "), Columns (: sex,: age), Nombre de la columna (" "X" "));"
jmp_app.RunCommand str
Gracias a la comunidad de usuarios de JMP por toda la buena información.
jb