<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Bonjour. Je voudrais exécuter JSL à partir de VB.
J'essaie de combiner un ensemble de 2 colonnes de caractères en une seule colonne de caractères "X", chaque champ étant séparé par un espace (" ").
Dans l'interface utilisateur JMP, je sélectionnerais les 2 colonnes dans la table de données, puis j'irais à Cols > Utilitaires > Combiner les colonnes .
Quelqu'un peut-il dire pourquoi le code ci-dessous ne fonctionne pas?
J'obtiens l'erreur suivante :
Nom non résolu : jmp_dt dans l'accès ou l'évaluation de 'jmp_dt' , jmp_dt/*###*/
Dim jmp_app As JMP.Application
Dim jmp_doc As JMP.Document
Estomper jmp_dt comme JMP.DataTable
Dim str As String
Set jmp_app = CreateObject("JMP.Application")
jmp_app.Visible = Vrai
Définir jmp_doc = jmp_app.OpenDocument("C:\Program Files\SAS\JMP\12\Samples\Data\Big Class.jmp")
Définir jmp_dt = jmp_doc.GetDataTable
str = "Combine Columns( delimiter("" ""), Columns(:sex,:age), Column Name(""X"") );"
jmp_dt.JSLFunction (chaîne)
En lisant d'autres fils de discussion de la communauté d'utilisateurs JMP, j'ai découvert le Tableau de données actuel fonction.
Cette fonction permet à JSL de référencer une table qui est déjà ouverte (dans mon cas, elle a été ouverte par Visual Basic), et maintenant mon code fonctionne.
Voici mes 2 dernières lignes de code révisées:
str = "dt = Tableau de données actuel();" & _
"dt << Combine Columns( Delimiter( "" "" ), Columns(:sex,:age), Column Name(""X"") );"
jmp_app.RunCommand str
Merci à la communauté d'utilisateurs JMP pour toutes les bonnes informations !
jb