请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册

QQ登录

只需一步,快速开始

大Vi

高级会员

186

主题

410

帖子

1310

积分

高级会员

积分
1310
大Vi
高级会员   /  发表于:2025-4-3 14:47  /   查看:105  /  回复:1
1金币
image.png728692626.png 前一个就是开始日期F2,后一个是结束日期G2,我的校验有什么问题吗?为什么结束日期一直提示错误?

  1. // 开始日期
  2.             var dv3 = GC.Spread.Sheets.DataValidation.createDateValidator(
  3.                 GC.Spread.Sheets.ConditionalFormatting.ComparisonOperators.between,
  4.                 new Date(),
  5.                 "=G2"
  6.             );
  7.             dv3.showInputMessage(true);
  8.             dv3.inputMessage("大于当前日期,小于结束日期");
  9.             dv3.inputTitle("Tip");
  10.             dv3.showErrorMessage(true);
  11.             dv3.errorMessage("Incorrect Value");
  12.             sheet.setValue(1, 5, new Date());
  13.             sheet.setDataValidator(1, 5, dv3);
  14.             sheet.setStyle(1, 5, notShowTimestyle);

  15.             // 结束日期
  16.             var dv4 = GC.Spread.Sheets.DataValidation.createDateValidator(
  17.                 GC.Spread.Sheets.ConditionalFormatting.ComparisonOperators.between,
  18.                 "=F2",
  19.                 null
  20.             );
  21.             dv4.showInputMessage(true);
  22.             dv4.inputMessage("大于开始日期");
  23.             dv4.inputTitle("Tip");
  24.             dv4.showErrorMessage(true);
  25.             dv4.errorMessage("Incorrect Value");
  26.             sheet.setValue(1, 6, new Date());
  27.             sheet.setDataValidator(1, 6, dv4);
  28.             sheet.setStyle(1, 6, notShowTimestyle);
复制代码


最佳答案

查看完整内容

您好!关于数据验证日期,参考规则如下: 1. 如果介于(或不介于)开始日期和结束日期之间,使用比较运算符between(或notBetween),并且对DataValidation:createDateValidator()设置日期范围的所有边界,即设置v1和v2参数。 2. 如果要求输入数据对应的日期大于(或大于等于)某日期,使用比较运算符greaterThan(或greaterThanOrEqualsTo),并且对DataValidation:createDateValidator()设置参考日期,设置v1参数即可。 3. ...

1 个回复

倒序浏览
最佳答案
最佳答案
Wilson.Zhang
超级版主   /  发表于:2025-4-3 14:47:37
来自 2#
您好!关于数据验证日期,参考规则如下:

1. 如果介于(或不介于)开始日期和结束日期之间,使用比较运算符between(或notBetween),并且对DataValidation:createDateValidator()设置日期范围的所有边界,即设置v1和v2参数。
2. 如果要求输入数据对应的日期大于(或大于等于)某日期,使用比较运算符greaterThan(或greaterThanOrEqualsTo),并且对DataValidation:createDateValidator()设置参考日期,设置v1参数即可。
3. 如果要求输入数据对应的日期小于(或小于等于)某日期,使用比较运算符lessThan(或lessThanOrEqualsTo),并且对DataValidation:createDateValidator()设置参考日期,设置v1参数即可。
4. 如果要求输入数据对应的日期等于(或不等于)某日期,使用比较运算符equalsTo(或notEqualsTo),并且对DataValidation:createDateValidator()设置参考日期,设置v1参数即可。

根据您提供的代码片段,了解到设置了两个日期数据验证规则:dv3设定了日期范围,即要求输入数据介于日期区间内;dv4设置了比较运算符为between,仅设置了一个有效日期,还缺少一个日期参数以构成日期区间。根据dv4定义的inputMessage内容(“大于开始日期”),如下图所示,理解您可能需要对dv4设置大于F2单元格中日期数据的验证规则。那么,应该使用的比较运算符是greaterThan。
1743671718263.png782682189.png
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部