<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />我到处搜索过,包括这样的线程:有没有办法将字体颜色发送到显示中的单个值? 所以如果X> 10 色 X 紫色(鉴于我知道如何...
但我找不到为大于或等于或刚好等于添加新条件格式规则的确切单词。 有人可以列出每个组合吗? 这是我正在做的一个例子。 我需要使用替换来使变量发挥作用。
Eval(Substitute(Expr(Preferences(
Conditional Formatting Rules( RuleSet( RuleName( aaa ),
GreaterThan( value(nnn), Format( Text Color( "White" ), FontStyle( Bold ), Back Color( 17 ) ) ), )))),
Expr( aaa ), mystring,
Expr( nnn ), myparam
)
);
关键是大于。 我知道这是有效的,LessThan 和大小写也很重要! 我只是不知道如何处理等于、不等于、大于或等于、小于或等于。 我尝试过各种大小写和空格的组合,但没有任何效果。 我不断收到无法识别的规则。
最后,有人知道删除规则集的代码吗?
这些信息都找不到。
提前致谢
H
嗨希瑟,
对于您最初的查询的回复有点晚了,但我发现自己的情况与您几天前描述的情况非常相似 - 这就是我为获得我想要的效果所做的:
首先,使用交互式对话框,如中所述https://community.jmp.com/t5/Discussions/Is-there-a-way-to-send-a-font-color-to-a-single-value-in-a/td-p/8643创建您想要的一组条件。 我想要做的是,如果内容小于 0.25,则将 TableBox 中所有 NumberColBoxes 的单元格设置为红色,如果大于或等于 0.25 但小于 0.75,则设置为琥珀色,如果内容设置为绿色,则设置为绿色大于或等于0.75。
我希望当背景颜色为红色或绿色时,文本颜色从黑色变为白色,以使其更易于阅读,如果我愿意,我还可以对文本应用粗体和/或斜体选项。 查看“琥珀色”状态时的对话框屏幕如下所示:

设置完成后,我需要看看上面的内容在 JSL 中是什么样子,以便我可以将其合并到我的脚本中。 为此,请在脚本窗口中键入“showpreferences()”并运行它。 输出显示您的所有首选项,包括刚刚设置的首选项,在我的例子中如下所示:
规则集(
规则名称( “DMR_测试_01” ),
比...更棒(
价值( 0.75 ),
包括的( 0 ),
格式(文字颜色( “白色的” ),背面颜色({ 0 , 200 , 0 } ) )
),
范围(
最小值( 0.25 ),
最大值( 0.75 ),
包含开始( 0 ),
包含结束( 0 ),
格式(文字颜色( “黑色的” ),背面颜色( 「中浅黄色」 ) )
),
少于(
价值( 0.25 ),
包括的( 0 ),
格式(文字颜色( “白色的” ),背面颜色( “红色的” ) )
)
)
)
因此,我将上述规则集合并到我自己的 Preferences() 语句中,然后在 TableBox 上测试它,其中包含 0 到 1 之间的随机数列,如图所示。 为了让自己可以选择将其构建到某个函数中,以便稍后可以在其结构可能还包含一些 StringColBox 或 PlotColBox 的任何 TableBox 上运行,我测试了每个框以查看它是否是 NumberColBox,然后再尝试将条件格式应用于它。 最终脚本如下所示:
优先(
条件格式规则(
规则集(
规则名称( “DMR_测试_01” ),
比...更棒(
价值( 0.75 ),
包括的( 0 ),
格式(文字颜色( “白色的” ),背面颜色({ 0 , 200 , 0 } ) )
),
范围(
最小值( 0.25 ),
最大值( 0.75 ),
包含开始( 0 ),
包含结束( 0 ),
格式(文字颜色( “黑色的” ),背面颜色( 「中浅黄色」 ) )
),
少于(
价值( 0.25 ),
包括的( 0 ),
格式(文字颜色( “白色的” ),背面颜色( “红色的” ) )
)
)
)
);
fn_RanUni =功能({N}, {默认本地},
RanUniList = {};为了(我= 1 , i<=N, i++,插入(RanUniList,随机制服()));
然UniList
);
我的表框 =表格框(
字符串列框( “SCB” , { “AAA” , “BBB” , “CCC” , “滴滴” , “EEE” , “FFF” , “格格” , “呵呵” , “三” , “JJJ” }),
数字列框( “NCB1” , fn_RanUni( 10 ), <<设置格式( “固定十二月” , 10 , 3 )),
数字列框( “NCB2” , fn_RanUni( 10 ), <<设置格式( “固定十二月” , 10 , 3 )),
绘图列框( “PCB1” , fn_RanUni( 10 )),
数字列框( “NCB3” , fn_RanUni( 10 ), <<设置格式( “固定十二月” , 10 , 3 )),
数字列框( “NCB4” , fn_RanUni( 10 ), <<设置格式( “固定十二月” , 10 , 3 )),
绘图列框( “PCB2” , fn_RanUni( 10 )),
数字列框( “NCB5” , fn_RanUni( 10 ), <<设置格式( “固定十二月” , 10 , 3 )),
<<设置阴影交替行( 0 ),
<<设置阴影标题( 0 ),
<<设置列边框( 1 ),
<<设置行边框( 0 ),
<<设置下划线标题( 1 ),
<<背景颜色( “白色的” )
);
为了(我= 1 ,我<= n项(我的表框),i++,
如果((My_TableBox[i] <<班级名称())== “数字列框” ,
My_TableBox[i] <<设置条件格式( “DMR_测试_01” )
)
);
新窗户( “西北” ,
我的表框
);
我现在可以从首选项中看到如何获得正确的语法:(a) 指定范围、(b) 更改单元格的背景颜色以及 (c) 合并“大于或等于”条件。运行上面的脚本应该会产生如下结果:

我希望这对任何尝试做类似事情的人都有帮助。