求助:填报控件设置当月4号前可修改上一个月的数据,但是无论怎么设置单元格都是可编辑状态

想要实现的是,当每月的4号前,可以修改上月和未来的数据,不可修改上上个月的数据

eg:当日期是4号,2022年12月,11月。。的数据不可修改,只可修改2023年1月,2月。。数据

当日期是3号的时候,2022年12月的数据和2023年1月,2月。。数据可修改,2022年11月的数据不可修改

我的公式如下,目前这样写,所有单元格都是可编辑,相当于这个条件不生效。不明白是and/or这里用得不对还是公式都不对?还是编辑里面还要单独设置什么?

if(AND(month(today())=1),day(today()<4),C2=year(today())-1,C2=year(today()))

if(AND(month(today())=1),day(today()<4),D2=month(today())-1,C2=month(today()))

image.png

补充:

image.png

image.png

FineReport vinny 发布于 2023-1-9 10:39 (编辑于 2023-1-9 13:45)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
Z4u3z1Lv6专家互助
发布于2023-1-9 10:57(编辑于 2023-1-9 14:05)

and(day(today())<4,FORMAT(MONTHDELTA(today(),-1),"yyyy-MM-01")<=CONCATENATE(C2,"-",IF(D2<10,CONCATENATE("0",D2,"-01"),CONCATENATE(D2,"-01"))) )

and(day(today())>=4,FORMAT(today(),"yyyy-MM-01")<=CONCATENATE(C2,"-",IF(D2<10,CONCATENATE("0",D2,"-01"),CONCATENATE(D2,"-01"))) )

------------

控件值决定其它控件是否可用.zip

  • vinny vinny(提问者) 最外面的and()是什么意思呀?我把公式改成今天进行测试,但是所有单元格还是可编辑状态。 and(day(today())>=9,FORMAT(today(),\"yyyy-MM-01\")<=CONCATENATE(C2,\"-\",IF(D2<10,CONCATENATE(\"0\",D2,\"-01\"),CONCATENATE(D2,\"-01\"))) ) 我分析是今天是9号,则会执行这句话。那我拿的我第一行数据:2023-01-01<2022-12-01,这是判断是假,应该是控件不可编辑才对是把?
    2023-01-09 11:28 
  • Z4u3z1 Z4u3z1 回复 vinny(提问者) 最外面的and表示括号里面的条件需要同时成立。你后面举的例子中C2=2022?D2=12?
    2023-01-09 11:33 
  • vinny vinny(提问者) 回复 Z4u3z1 上面句话我已经研究出来了。我又测试一条,把你第一个公式小于4改成小于10。意思是:日期小于10号的时候,上一个月和当前月,下一个月的的数据都可以修改,而2022-11-01的不能修改。但是我现在测试2022-11-01的数据还是可以修改,这是为啥呢? and(day(today())<10,FORMAT(MONTHDELTA(today(),-1),\"yyyy-MM-01\")<=CONCATENATE(C2,\"-\",IF(D2<10,CONCATENATE(\"0\",D2,\"-01\"),CONCATENATE(D2,\"-01\")))) 我用单元格进行更标识更明白一点,图片补充在问题里 H2的公式是if(day(today())<10,FORMAT(MONTHDELTA(today(),-1),\"yyyy-MM-01\"),1);I2的公式是CONCATENATE(C2,\"-\",IF(D2<10,CONCATENATE(\"0\",D2,\"-01\"),CONCATENATE(D2,\"-01\")))
    2023-01-09 13:44 
  • Z4u3z1 Z4u3z1 回复 vinny(提问者) 如果是新增的数据条件属性在你填写的时候是不生效的,这个需要用JS来控制才行(js可以参考我传的demo改改)
    2023-01-09 14:05 
  • vinny vinny(提问者) 回复 Z4u3z1 这个我测试了,原来的单元格有条件去判断控件是否可用的时候,是无法新增数据的
    2023-01-09 15:27 
最佳回答
0
用户6NWif5139660Lv6资深互助
发布于2023-1-9 10:43(编辑于 2023-1-9 10:44)

这里不对 写在day()<4 写在括号外啊day(today())<4

image.png

  • 2关注人数
  • 332浏览人数
  • 最后回答于:2023-1-9 14:05
    请选择关闭问题的原因
    确定 取消
    返回顶部