besoin d'une formule jsl pour tenir compte de la cellule vide dans l'instruction conditionnelle ifSalut - Je suis nouveau dans les scripts jsl et j'essaie de construire une instruction jsl comme suit :
si la colonne A est vide, la colonne C = vide,
sinon si colonne A < 500 et colonne B = 200, colonne C = 0,
sinon si colonne A>500, colonne C = 1.
Comment encadrer une formule jsl pour faire cela ?Merci!
ScriptRe: besoin d'une formule jsl pour tenir compte de la cellule vide dans l'instruction conditionnelle ifC'est ce que j'ai trouvé après une recherche approfondie de l'index jsl, du menu d'aide et de google et de nombreuses tentatives d'essais et d'erreurs ... mais cela n'a pas fonctionné.Ma formule pour la colonne C est :
formule (
Si (manquant (:colonne A), vide(),
:colonne A< 500 & :colonne B == 200, 1,
:colonneA>500, 0
))
Re: besoin d'une formule jsl pour tenir compte de la cellule vide dans l'instruction conditionnelle if@Campbell_Ted_R
essaye ça:
names default to here (1);
dt = Current data table();
dt << new column ("C","Numeric", "ordinal", Formula (If(
Is Missing( :A ),.,
:A < 500 & :B == 200, 0,
:A > 500, 1
)));
Re: besoin d'une formule jsl pour tenir compte de la cellule vide dans l'instruction conditionnelle ifMerci Ron.La condition "vide" ne s'enregistre pas pour une raison quelconque.Autrement dit, si :A est vide, :C est 1.
??
Re: besoin d'une formule jsl pour tenir compte de la cellule vide dans l'instruction conditionnelle if@Campbell_Ted_R
essayez la version modifiée
Re: besoin d'une formule jsl pour tenir compte de la cellule vide dans l'instruction conditionnelle ifIl reconnaît maintenant les cellules vides et les remplit correctement comme vides (yay), prend correctement en compte la 2ème condition et définit les 0 de manière appropriée, mais il n'atteint pas la troisième condition (sinon si).C'est-à-dire qu'il n'est jamais égal à 1, même s'il existe de nombreux cas où il devrait l'être.
Re : besoin d'une formule jsl pour tenir compte de la cellule vide dans l'instruction conditionnelle ifest-ce correct?
New Table( "Untitled",
Add Rows( 12 ),
New Column( "A",
Numeric,
"Continuous",
Format( "Fixed Dec", 12, 0 ),
Set Values( [., ., 400, 400, 550, 550, ., ., 400, 400, 550, 550] )
),
New Column( "B",
Numeric,
"Continuous",
Format( "Fixed Dec", 5, 0 ),
Set Values( [200, 61, 200, 66, 200, 60, 200, 51, 200, 61, 200, 65] )
),
New Column( "C",
Numeric,
"Ordinal",
Format( "Best", 10 ),
Formula( If( Is Missing( :A ), ., :A < 500 & :B == 200, 0, :A > 500, 1 ) ),
Set Selected
)
);