Ce post est un suivi et une extension du forum résolu ici .
Le script suivant a été développé dans ce post :
Names Default To Here(1);
dt = Current Data Table();
//get the unique character variable list
col9 = Column(dt, "Column 1");
unique_char = Associative Array(col9) << get keys;
nuniquechar = N Items(unique_char); //will be 5, if categories are A, B, C, D, E
unique_aa = Associative Array(unique_char, Repeat({.}, nuniquechar)); //repeat to initialize values as missing
//create new window to create multiple number edit boxes
vlbExpr = V List Box();
For(i = 1, i <= nuniquechar, i++,
Insert Into(vlbExpr, Text Box("Number for " || Char(unique_char[i]) || ":")); //i.e. "Number for A:"
Eval(
Eval Expr(Insert Into(vlbExpr, Number Edit Box(., <<SET function=""></SET>Si la colonne 2 existe déjà et que l'utilisateur souhaite la remplacer par un ensemble de nouvelles valeurs, en réexécutant le script et en saisissant un nouvel ensemble de valeurs.
J'ai essayé d'utiliser la fonction de mise à jour. Si la colonne 2 existe, la fonction de mise à jour sera utilisée sur la colonne 2. Sinon, la colonne 2 sera créée. comme ci-dessus. mais je ne suis pas familier avec l'expression Eval et j'ai besoin de mieux comprendre où je pourrais mettre une déclaration comme celle-ci dans le script si cela fonctionne.
Voici une méthode qui traitera le problème où la colonne existe déjà
Names Default To Here( 1 );
dt = Current Data Table();
//get the unique character variable list
col9 = Column( dt, "Column 1" );
unique_char = Associative Array( col9 ) << get keys;
nuniquechar = N Items( unique_char ); //will be 5, if categories are A, B, C, D, E
unique_aa = Associative Array( unique_char, Repeat( {.}, nuniquechar ) ); //repeat to initialize values as missing
//create new window to create multiple number edit boxes
vlbExpr = V List Box();
For( i = 1, i <= nuniquechar, i++,
Insert Into( vlbExpr, Text Box( "Number for " || Char( unique_char[i] ) || ":" ) ); //i.e. "Number for A:"
Eval(
Eval Expr(
Insert Into(
vlbExpr,
Number Edit Box(
.,
<<SET function=""></SET>