<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Bonjour,
J'ai un script qui ouvre plusieurs tables de données et exécute un algorithme qui crée une nouvelle colonne et attribue une couleur en fonction du résultat obtenu pour chacun de ces fichiers. Il les concatène ensuite et crée une table de sous-ensembles en fonction des colonnes que vous choisissez.
Le problème est que, lorsqu'il concatène les données, la couleur n'apparaît pas dans le nouveau datatable concaténé ni dans le sous-ensemble. Mon script est ci-dessous. J'ai également joint le script et les tables de données. Je vous remercie.
Noms par défaut jusqu'ici ( 1 ) ;
// Utilisez 'PickFile ()' pour obtenir une liste de fichiers à ouvrir (Windows uniquement)
fileList = Choisir un fichier (
"Sélectionnez un ou plusieurs fichiers" , // invite
"$ BUREAU" , // dossier initial
{ "Fichiers JMP | jmp; jsl; jrn; csv" , "Tous les fichiers | *" } , // Liste des filtres de fichiers à appliquer (ignorés par OS / X)
1 , // Filtre de fichier initial à appliquer (index de l'élément dans la liste ci-dessus)
0 , // Indicateur de sauvegarde - Spécifiez une fenêtre "Enregistrer" ou "Ouvrir". Définissez une valeur de 1 ou 0 respectivement.
Vide () , // fichier par défaut
plusieurs // Multiple - Si 'Save Flag' = 0, utiliser une valeur de 1 permet d'ouvrir plusieurs fichiers (ignoré par OS / X)
) ;
// Si un seul fichier est sélectionné, fileList ne sera pas une liste, nous devons donc le construire nous-mêmes.
Si ( ! Est la liste ( fileList ) ,
fileList = Liste d'évaluation ( { fileList } )
) ;
// Ouvre les fichiers et stocke leurs noms de table JMP correspondants
noms de table = {} ;
Pour ( F = 1 , F <= N articles ( fileList ) , F ++,
Dttemp = Ouvrir ( fileList [ F ] ) ;
Insérer dans ( noms de table , Dttemp << getName ) ;
Dttemp = Tableau de données actuel () ;
Dttemp << Nouvelle colonne ( "St / Si" , Numérique , continu , Format ( "Meilleur" , 5 ) ,
Formule ( : "Cote de pilotage" / : "Taille de voiture" ) ) ;
Dttemp << Nouvelle colonne ( "V1-St / Si" , Numérique , continu , Format ( "Meilleur" , 5 )) ;
Pour ( je = 1 , je <= N Row ( Dttemp ) , je ++,
Si ( : "St / Si" [ je ] > ( Col Mean ( : "St / Si" ) + ( Col Maximum ( : "St / Si" ) - Col Mean ( : "St / Si" )) * 1 / 2 ) , : "V1-St / Si" [ je ] = 3 ,
Si ( : "St / Si" [ je ] > ( Col Mean ( : "St / Si" ) - ( Col Mean ( : "St / Si" ) - Col Minimum ( : "St / Si" )) * 1 / 2 ) , : "V1-St / Si" [ je ] = 2 ,
Si ( : "St / Si" [ je ] > Col Minimum ( : "St / Si" ) , : "V1-St / Si" [ je ] = 1 , : "V1-St / Si" [ je ] = 0 )
)
) ;
) ;
// couleur ligne par ligne
Pour ( je = 1 , je <= N Row ( Dttemp ) , je ++,
Si ( : "St / Si" [ je ] > ( Col Mean ( : "St / Si" ) + ( Col Maximum ( : "St / Si" ) - Col Mean ( : "St / Si" )) * 1 / 2 ) ,
Colonne ( Dttemp , "V1-St / Si" ) << Cellules de couleur ( 3 , { je } ) ,
Si ( : "St / Si" [ je ] > ( Col Mean ( : "St / Si" ) - ( Col Mean ( : "St / Si" ) - Col Minimum ( : "St / Si" )) * 1 / 2 ) ,
Colonne ( Dttemp , "V1-St / Si" ) << Cellules de couleur ( 9 , { je } ) ,
Si ( : "St / Si" [ je ] > Col Minimum ( : "St / Si" ) ,
Colonne ( Dttemp , "V1-St / Si" ) << Cellules de couleur ( 4 , { je } ) ,
Colonne ( Dttemp , "V1-St / Si" ) << Cellules de couleur ( 4 , { je } )
)
)
) ;
) ;
// Ajoute les tables de données ensemble
Si ( F == 1 ,
dt = Dttemp ,
dtx = dt << Joindre ( Avec ( Dttemp ) ,
Préserver l'ordre de la table principale () ,
Nom de la table de sortie ( "Carrat Concaténé" ) ,
Conserver la propriété de la colonne ,
) ;
Fermer ( Dttemp , nosave ) ;
Fermer ( dt , nosave ) ;
dt = dtx
) ;
) ;
// Créer un copieur de colonne pour copier des fichiers
dt = Tableau de données actuel () ;
dt2 = dt << Sous-ensemble () ;
Si vous utilisez la propriété de colonne Valeur des couleurs pour la coloration des cellules, la couleur des cellules peut être conservée dans la table jointe.
Votre code est répliqué ci-dessous, mais une propriété de colonne de couleur est maintenant ajoutée à chaque fois qu'une nouvelle colonne "V1-St / Si" est créée:
Noms par défaut jusqu'ici ( 1 )
// Utilisez 'PickFile ()' pour obtenir une liste de fichiers à ouvrir (Windows uniquement)
fileList = Choisir un fichier (
"Sélectionnez un ou plusieurs fichiers" , // invite
"$ BUREAU" , // dossier initial
{ "Fichiers JMP | jmp; jsl; jrn; csv" , "Tous les fichiers | *" }, // Liste des filtres de fichiers à appliquer (ignorés par OS / X)
1 , // Filtre de fichier initial à appliquer (index de l'élément dans la liste ci-dessus)
0 , // Indicateur de sauvegarde - Spécifiez une fenêtre "Enregistrer" ou "Ouvrir". Définissez une valeur de 1 ou 0 respectivement.
Vide (), // fichier par défaut
plusieurs // Multiple - Si 'Save Flag' = 0, utiliser une valeur de 1 permet d'ouvrir plusieurs fichiers (ignoré par OS / X)
)
// Si un seul fichier est sélectionné, fileList ne sera pas une liste, nous devons donc le construire nous-mêmes.
Si (! Est la liste (fileList),
fileList = Liste d'évaluation ({fileList})
)
// Ouvre les fichiers et stocke leurs noms de table JMP correspondants
tablesNames = {};
Pour (f = 1 , f <= N articles (fileList), f ++,
dttemp = Ouvrir (fileList)
Insérer dans (noms de table, dttemp << getName )
dttemp = Tableau de données actuel ();
dttemp << Nouvelle colonne ( "St / Si" , Numérique, continu, Format ( "Meilleur" , 5 ), Formule(: "Cote de pilotage" /: "Taille de voiture" ));
dttemp << Nouvelle colonne ( "V1-St / Si" ,
Numérique,
continu
Format ( "Meilleur" , 5 ),
<< Ajouter des propriétés de colonne (Définir la propriété ( "Couleurs de valeur" { 0 = 4 , 1 = 4 , 2 = 9 , 3 = 3 }), Cellule de couleur par valeur)
)
Pour (i = 1 , je <= N Row (dttemp), i ++,
Si (: "St / Si" > ( Col Mean (: "St / Si" ) + ( Col Maximum (: "St / Si" ) - Col Mean (: "St / Si" )) * 1 / 2 ),
: "V1-St / Si" = 3 ,
Si (: "St / Si" > ( Col Mean (: "St / Si" ) - ( Col Mean (: "St / Si" ) - Col Minimum (: "St / Si" )) * 1 / 2 ),
: "V1-St / Si" = 2 ,
Si (: "St / Si" > Col Minimum (: "St / Si" ),
: "V1-St / Si" = 1 ,
: "V1-St / Si" = 0
)
)
)
)
// Ajoute les tables de données ensemble
Si (f == 1 ,
dt = dttemp,
dtx = dt << Joindre (Avec (dttemp), Conserver l’ordre de la table principale (), Nom de la table de sortie ( "Carrat Concaténé" ), Retain Column Property,);
Fermer (dttemp, nosave);
Fermer (dt, nosave);
dt = dtx;
)
)