找回密码
 立即注册

QQ登录

只需一步,快速开始

doudou2022

初级会员

19

主题

60

帖子

259

积分

初级会员

积分
259
doudou2022
初级会员   /  发表于:2022-11-4 22:06  /   查看:1172  /  回复:6
50金币
https://gcdn.grapecity.com.cn/showtopic-75281-1-1.html

这个帖子里,关于公式字段没有today(),如何在公式字段得到当天日期的问题。
版主大人给了一个迂回用NOW()函数得到TODAY()的方法:round(now(),0)
然后我写的公式字段是: =IF([入库数量]<[订单数量],IF([交货日期]=round(NOW(),0),"当天应到",IF([交货日期]>round(NOW(),0),"正常","延迟")),"已到货")


但在用的时候发现一个问题,就是在早上的时候结果是正确的,到晚上结果就会不正确了。
然后又查了下资料,发现应该是ROUND()取值是四舍五入,所以入起来后就成today()+1了。

公式字段我想要实现的一个是:(订单表有“交货日期”、“订单数量”、“入库数量”等字段)
当“入库数量”<“订单数量”,“交货日期”=today(),结果是 今天应到
                                               “交货日期”<today(),结果是 延迟

                                               “交货日期”>today(),结果是 未延迟


最佳答案

查看完整内容

要对比,都用同类型的,要不都转换一下在对比

6 个回复

倒序浏览
最佳答案
最佳答案
Syl悬赏达人认证
金牌服务用户   /  发表于:2022-11-4 22:06:32
来自 5#
要对比,都用同类型的,要不都转换一下在对比
回复 使用道具 举报
Syl悬赏达人认证
金牌服务用户   /  发表于:2022-11-5 09:37:45
2#
下午就大于0.5了,别用四舍五入,直接取整试试  =INT(J2)

评分

参与人数 1金币 +5 收起 理由
Lay.Li + 5 赞一个!

查看全部评分

回复 使用道具 举报
doudou2022
初级会员   /  发表于:2022-11-5 09:50:29
3#
Syl 发表于 2022-11-5 09:37
下午就大于0.5了,别用四舍五入,直接取整试试  =INT(J2)

我当时也这么想,用INT(),但会提示错误,我再去测试一下
回复 使用道具 举报
doudou2022
初级会员   /  发表于:2022-11-5 10:11:22
4#
刚测试了一下公式
=IF([入库数量]<[数量],IF([交货日期]=int(NOW()),"当天应到",IF([交货日期]>int(NOW()),"未延迟","延迟")),"已到货")
其中“[交货日期]=int(NOW()),"当天应到"”这个条件得到结果不对,交货日期是今天,结果应该是”当天应到“,实际结果是”延迟“
回复 使用道具 举报
doudou2022
初级会员   /  发表于:2022-11-5 13:48:20
6#
Syl 发表于 2022-11-5 11:13
要对比,都用同类型的,要不都转换一下在对比

感谢Syl,在你提示下可以了。
IF([入库数量]<[数量],IF(int([交货日期])=int(NOW()),"当天应到",IF(int([交货日期])>int(NOW()),"未延迟","延迟")),"已到货")
回复 使用道具 举报
Lay.Li悬赏达人认证 活字格认证
超级版主   /  发表于:2022-11-7 10:57:40
7#
问题解决了就好~
后边有问题欢迎继续发帖交流
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部