Sujet : ajoute une capacité intégrée qui permet de coller directement une liste de noms de colonnes -du presse-papiers- dans le filtre de dialogue de colonne.
La solution de contournement d'aujourd'hui : à partir d'aujourd'hui, j'ai créé un script qui prend le contenu du presse-papiers -chargé avec des noms de colonnes- et le convertit en une expression régulière. Ensuite, je colle cette expression régulière dans le filtre et je sélectionne le mode de filtre 'expression régulière'. Cela fonctionne mais est un peu douloureux.
Je l'utilise souvent lorsque je travaille avec un "sélecteur de colonne", mais je suppose que cela peut fonctionner pour de nombreux autres besoins.
Il peut être utile de comprendre la source de la liste des noms de colonnes et votre utilisation/attentes :
- La liste est-elle une chaîne délimitée par des virgules (en supposant qu'il n'y ait pas de virgules dans les noms de colonnes ?
- Chaque nom aura-t-il des guillemets doubles ?
- La liste sera-t-elle entourée d'accolades ?
- La source de la liste provient-elle, par exemple, d'une sélection d'un utilisateur à partir d'un tableau JMP ou d'une source externe comme un courrier électronique ou un autre document externe ?
- Les noms seront-ils une correspondance parfaite, sensible à la casse ?
Par expérience, plus de détails sur la portée et l'utilisation aident les développeurs JMP à déterminer la taille et l'importance de votre demande.
Pour mon usage personnel, j'utilise des noms sans guillemets ni accolades.
Les délimiteurs peuvent être une virgule, un espace, une tabulation ou un chariot d'alimentation.
La source de la liste peut provenir de JMP ou d'Excel.
Et j'utilise le match parfait.
Veuillez trouver ci-dessous le script que j'ai écrit (j'ai utilisé l'appel Python pour le remplacement des caractères spéciaux car le script JMP est pénible lors de la gestion de "[") :
Input = liste dans le tampon de la fenêtre
Sortie = expression régulière dans le tampon de la fenêtre (puis, je la colle dans le filtre de JMP et sélectionne le mode 'expression régulière')
//RAMIS - 2021
Names Default To Here( 1 );
//Get clipboard
data = Get Clipboard();
//split list into array
testList_raw = Words( data, " \!t\!n\!r," );
//keep only unique entries
myArray_set = Associative Array( testList_raw );
unique_myArray = myArray_set << Get Keys;
//replace special characters
Python Init();
Python Send( unique_myArray );
Python Submit(
"\[
myList =unique_myArray
myOutput = ','.join(myList)
myOutput = myOutput.replace("[","\\[")
myOutput = myOutput.replace("]","\\]")
myOutput = myOutput.replace(",","|")
]\"
);
Wait( 0 );
//output to window's clipboard
myClipboard = Python Get( myOutput );
Set Clipboard( myClipboard );
Salutations,
Damien RAMIS - NXP