目前的办法:
在studio中的“公式脚本”中的“设置单元编辑结束前的脚本”
中判断是否输入的是正数。
或者在BeforeCellEditEnd事件中判断。
具体参考下面的帮助:
单元输入控制单元的在输入的时候,有些时候需要控制输入的范围、判断输入的是否是邮件地址等,这时候需要通过事件或单元结束前运行的脚本结合方法SetCanEndEdit等来控制输入状态,达到控制单元编辑的目的。一般的输入控制可以通过ChinaExcel Develop Studio中的“格式”中的“单元控件类型”来实现。
SetCanEndEdit:设置是否可以结束单元编辑状态,如果为false,则编辑状态不能结束。
以下是实现输入控制的两种方法:
1、单元结束前运行的脚本
通过ChinaExcel Develop Studio中的“公式脚本”中的“设置单元编辑结束前运行的脚本”或方法SetBeforeEndEditScript来实现。
举例说明:
本例对是对某单元的输入值控制在1到100之间。
以下是设置的脚本内容,使用JSCRIPT语法:
var value;
value = 1;
value = ChinaExcel.GetEditLineText();
if(value >=1 && value <= 100)
ChinaExcel.SetCanEndEdit(true);
else
{
ChinaExcel.ShowMessageBox("输入的数字超出范围");
ChinaExcel.SetCanEndEdit(false);
}
2、通过BeforeCellEditEnd事件
通过事件需要在对应的开发工具中通过代码来实现。
举例说明:(判断输入的是否是邮件地址)
value = ChinaExcel.GetEditLineText();
if(ChinaExcel.FindCriteriaString(value,"?*@?*.??*"))
ChinaExcel.SetCanEndEdit(true);
else
{
ChinaExcel.ShowMessageBox("输入的不是邮件地址");
ChinaExcel.SetCanEndEdit(false);
}
以上的代码语法可能会由于开发工具的不同而不同,以上的代码放在BeforeCellEditEnd事件的代码中。