Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

回复 加入收藏帖  复制
我要提问 帖子上移

有关字段的计算表达式

塞外雄鹰 等级: 普通会员 积分:0 金币:0 来自:中卫Access交流中心 发表于:2012-01-10 15:39:24   已结帖
楼主

 

大家帮我看看,我的停机时长是这么计算的,但是为什么没有办法运行呢,我是初学者,谢谢大家了。

 

access培训  诚聘access开发人员

    塞外雄鹰
      获得社区协助:请教问题(即发帖)4篇,其中获得解决的1篇;
      协助社区成员:协助他人(即回帖)0篇,其中被设为【最佳答案】的0篇;
      协助我们社区:发布技术文章0篇,邀请了0名新会员注册本社区(如何邀请会员注册,详见:http://www.accessoft.com/sitehelp.asp)。
Top

扫描下方工作人员的微信二维码加微信,邀您加入Access课堂微信群,进入一个技术交际圈:

网站工作人员微信

煮江品茶 等级:荣誉管理员★★★★★ 积分:5131 金币:17920 来自:武汉Access交流中心 发表于2012/1/10 16:20:49 
1楼 得分: 0

在表设计视图中恐怕不能这样搞法吧?可以在窗体设计视图中处理。

 

不过最根本的处理是删除这个没用的字段。这个字段是一个计算结果,不需要单独设置,通过查询就可以得到了。



    很高兴与您就本帖子进行交流,如果我的回答已经解决了您的问题,请点击上方的“最佳答案”,这样本帖子就不会在“待解决问题区”显示了,我也将获得2个积分奖励,并不会减少您的积分!
    煮江品茶
      获得社区协助:请教问题(即发帖)11篇,其中获得解决的7篇;
      协助社区成员:协助他人(即回帖)4989篇,其中被设为【最佳答案】的1580篇;
      协助我们社区:发布技术文章448篇,邀请了47名新会员注册本社区(如何邀请会员注册,详见:http://www.accessoft.com/sitehelp.asp)。
塞外雄鹰 等级:普通会员 积分:0 金币:0 来自:中卫Access交流中心 发表于2012/1/10 16:24:32 
2楼 得分: 0
谢谢你的解答,如果我一定想在表里做出这个计算结果,怎么样实现呢?

    塞外雄鹰
      获得社区协助:请教问题(即发帖)4篇,其中获得解决的1篇;
      协助社区成员:协助他人(即回帖)0篇,其中被设为【最佳答案】的0篇;
      协助我们社区:发布技术文章0篇,邀请了0名新会员注册本社区(如何邀请会员注册,详见:http://www.accessoft.com/sitehelp.asp)。
塞外雄鹰 等级:普通会员 积分:0 金币:0 来自:中卫Access交流中心 发表于2012/1/10 16:26:33 
3楼 得分: 0
我是想计算每个班的累计停机时间的。那要计算累计停机时间怎么样的思路呢?谢谢了!

    塞外雄鹰
      获得社区协助:请教问题(即发帖)4篇,其中获得解决的1篇;
      协助社区成员:协助他人(即回帖)0篇,其中被设为【最佳答案】的0篇;
      协助我们社区:发布技术文章0篇,邀请了0名新会员注册本社区(如何邀请会员注册,详见:http://www.accessoft.com/sitehelp.asp)。
煮茶论道 等级:版主★★★★★ 积分:1625 金币:1200 来自:常州Access交流中心 发表于2012/1/10 23:03:02 
4楼 得分: 0

应该没有办法搞,为什么非要那么搞,用查询不好么?



    很高兴与您就本帖子进行交流,如果我的回答已经解决了您的问题,请点击上方的“最佳答案”,这样本帖子就不会在“待解决问题区”显示了,我也将获得2个积分奖励,并不会减少您的积分!
    仇国平
      获得社区协助:请教问题(即发帖)59篇,其中获得解决的59篇;
      协助社区成员:协助他人(即回帖)724篇,其中被设为【最佳答案】的245篇;
      协助我们社区:发布技术文章30篇,邀请了8名新会员注册本社区(如何邀请会员注册,详见:http://www.accessoft.com/sitehelp.asp)。
煮江品茶 等级:荣誉管理员★★★★★ 积分:5131 金币:17920 来自:武汉Access交流中心 发表于2012/1/11 17:13:38 
5楼 得分: 0

ValidationRule 属性

参阅参阅参阅参阅

使用 ValidationRule 属性可以指定对输入到记录、字段或控件中的数据的要求。当输入的数据违反了 ValidationRule 的设置时,可以使用 ValidationText 属性指定将显示给用户的消息。

注释复选框选项按钮切换按钮类型的控件选项组中时,ValidationRuleValidationText 属性不能应用于这些控件,而只适用于选项组本身。

说明

对于 ValidationRule 属性,输入表达式,对于 ValidationText 属性设置,输入文本。ValidationRule 属性设置的最大长度是 2048 个字符。ValidationText 属性设置的最大长度则是 255 个字符。

对于控件,可以将 ValidationRule 属性设置为任何有效的表达式。对于字段和记录的有效性规则,表达式中不能包含用户定义的函数、域聚合函数聚合函数Eval 函数、CurrentUser 方法,另外也不能包含对窗体、查询或表的引用。此外,字段的有效性规则不能包含对其他字段的引用。对于记录,表达式则可以包含对该表中字段的引用。



    很高兴与您就本帖子进行交流,如果我的回答已经解决了您的问题,请点击上方的“最佳答案”,这样本帖子就不会在“待解决问题区”显示了,我也将获得2个积分奖励,并不会减少您的积分!
    煮江品茶
      获得社区协助:请教问题(即发帖)11篇,其中获得解决的7篇;
      协助社区成员:协助他人(即回帖)4989篇,其中被设为【最佳答案】的1580篇;
      协助我们社区:发布技术文章448篇,邀请了47名新会员注册本社区(如何邀请会员注册,详见:http://www.accessoft.com/sitehelp.asp)。
萧云 等级:一星会员 积分:47 金币:240 来自:伊春Access交流中心 发表于2012/1/11 22:27:48 
6楼 得分: 0

强调一下,ACCESS不支持计算字段,你可以考虑一下在窗体中进行计算然后将保存到一张数据表中。

具体如何在窗体中实现,则需要一些基础,至少需要你会应用简单的VBA编程。



    很高兴与您就本帖子进行交流,如果我的回答已经解决了您的问题,请点击上方的“最佳答案”,这样本帖子就不会在“待解决问题区”显示了,我也将获得2个积分奖励,并不会减少您的积分!
    萧云
      获得社区协助:请教问题(即发帖)1篇,其中获得解决的1篇;
      协助社区成员:协助他人(即回帖)99篇,其中被设为【最佳答案】的16篇;
      协助我们社区:发布技术文章6篇,邀请了0名新会员注册本社区(如何邀请会员注册,详见:http://www.accessoft.com/sitehelp.asp)。
浪淘沙 等级:贵宾★★★★★ 积分:122 金币:160 来自:浦东Access交流中心 发表于2012/1/11 22:58:53 最佳答案
7楼 得分: 2

正好有点空,也来跟楼主闲扯一下

其实楼上的两位煮派大师和萧云已经给你指明了方向。我来点示例吧。

 

    表字段是用来存储数据的,字段有效性规则是用来约束(CHECK)写入的数据的制约条件,不是用来写入数据的。不管是手工录入还是程序写入,都需要有对表字段的写入动作,您的要求显然属于后者,可是表本身没有控件事件响应来操作字段,只有通过窗体来实现。 但可以通过查询已有字段生成该计算字段,如果再占用储存空间来记录,就属于冗余数据,浪费了空间资源,时髦说法就是违背了眼下提倡的绿色节能环保的宗旨哦。

 

环保方案:

    有了其他几个数据,做一个查询表 "Tbl_new",新建一个表达式字段“停机时长”,这个查询表"Tbl_new"就是你要的表,打开它一样可以新增,修改或删除数据,"停机时长"字段会自动同步更新。如果要计算累计停机时间对着这个新表操作求和“SUM([停机时长]) as 时长合计”就可以了, 和操作原生表那是一样一样滴

查询表语句如下:

SELECT 化机浆成产数据.*, Hour([开机时间])-Hour([停机时间])+(Minute([开机时间])-Minute([停机时间]))/60 AS 停机时长 FROM 化机浆成产数据;

请打开附件在对象-查询里查看该表"Tbl_new".

窗体查看有两种办法,见方案1,2

 

你探索可能性的方案3:

可以通过窗体来做,见附件里方案3窗体,多了字段和代码。但真的很不环保啊,做出来只希望对你的探索研究有益就达到目的了。

点击下载此附件

    很高兴与您就本帖子进行交流,如果我的回答已经解决了您的问题,请点击上方的“最佳答案”,这样本帖子就不会在“待解决问题区”显示了,我也将获得2个积分奖励,并不会减少您的积分!
    浪淘沙
      获得社区协助:请教问题(即发帖)12篇,其中获得解决的7篇;
      协助社区成员:协助他人(即回帖)137篇,其中被设为【最佳答案】的49篇;
      协助我们社区:发布技术文章4篇,邀请了0名新会员注册本社区(如何邀请会员注册,详见:http://www.accessoft.com/sitehelp.asp)。
塞外雄鹰 等级:普通会员 积分:0 金币:0 来自:中卫Access交流中心 发表于2012/1/13 22:03:48 
8楼 得分: 0

谢谢各位的解答,这几天通过系统学习,掌了一点基础知识,所以对大家的讲解能听懂了些了。我说的这个计算其实在ACCESS2010中是可以实现的。我现在已经按照7楼的方法做了。

 

以后还会有大量的问题需要大家赐教。



    塞外雄鹰
      获得社区协助:请教问题(即发帖)4篇,其中获得解决的1篇;
      协助社区成员:协助他人(即回帖)0篇,其中被设为【最佳答案】的0篇;
      协助我们社区:发布技术文章0篇,邀请了0名新会员注册本社区(如何邀请会员注册,详见:http://www.accessoft.com/sitehelp.asp)。
总记录:8篇  页次:1/1 9 1 :
您还没有在Access软件网登录不能回复帖子
  • 你没有登录,请点击后面链接登录:登录
  • 如果你没有注册,请点击后面链接注册:注册,注册完成后,请再次访问本页功能。