besoin d'une formule jsl pour tenir compte de la cellule vide dans l'instruction conditionnelle ifBonjour, 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 pourrais-je encadrer une formule JSL pour ce faire ?Merci!
Automatisation et scriptsIngénierie Qualité et ProcédésRe : besoin d'une formule JSL pour tenir compte des cellules vides dans l'instruction if conditionnelleMerci Craige.Conseils utiles pour déboguer les formules.Je l'apprécie!
Re : besoin d'une formule JSL pour tenir compte des cellules vides dans l'instruction if conditionnelleMerci Ron.Ça marche maintenant!
Re : besoin d'une formule JSL pour tenir compte des cellules vides dans l'instruction if conditionnelleAttention aux cas extrêmes :
- A == 500, exactement
- A<500 et B != 200
Cela vaut peut-être la peine d'ajouter 999 comme valeur contraire, juste pour attirer votre attention si quelque chose passe à travers. Si les secrets
Si B est une valeur manquante, le test B!=200 sera pas être VRAI ou FAUX. Les exemples ci-dessus feront probablement ce que vous attendez, mais si B==200 est juste avant la valeur finale sinon (999, par exemple) et que B est manquant, il n'obtiendra pas la valeur sinon (car ni VRAI ni FAUX ) -- il disparaît.
Re : besoin d'une formule JSL pour tenir compte des cellules vides dans l'instruction if conditionnelleJe vais devoir essayer ça demain matin.Merci!
Re : besoin d'une formule JSL pour tenir compte des cellules vides dans l'instruction if conditionnelleest-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
)
);
Re : besoin d'une formule JSL pour tenir compte des cellules vides dans l'instruction if conditionnelleIl reconnaît maintenant les cellules vides et les remplit correctement comme vides (oui), 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).Autrement dit, ce n’est jamais 1, même s’il existe de nombreux cas où cela devrait l’être.
Re : besoin d'une formule JSL pour tenir compte des cellules vides dans l'instruction if conditionnelle@learning_JSL
essayez la version éditée
Re : besoin d'une formule JSL pour tenir compte des cellules vides dans l'instruction if conditionnelleMerci Ron.La condition "vide" n'est pas enregistrée pour une raison quelconque.Autrement dit, si :A est vide, :C vaut 1.
??
Re : besoin d'une formule JSL pour tenir compte des cellules vides dans l'instruction if conditionnelle@learning_JSL
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 des cellules vides dans l'instruction if conditionnelleC'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 :
formula(
If(
Is Missing( :column A ), Empty(),
:column A < 500 & :column B == 200, 1,
:columnA > 500, 0
)
)