Office中国论坛/Access中国论坛

标题: 在ACCESS能不能做一个这样的查询?(自己发贴自己解决) [打印本页]

作者: su_xx    时间: 2008-7-17 16:28
标题: 在ACCESS能不能做一个这样的查询?(自己发贴自己解决)
想要做一个能自身迭代的查询.:
比如有这样一个表格:
ID    A      B      C
1    10     20    30
2    20     30    40
3    30     40    50
做一个查询,结果是下面样式:
ID    A     B      C         合计
1     10    20    30       60
2     20    30    40       150
3     30    40    50       270

请高手指点一下,先谢了,需要用VBA写函数也可以,附件如下:自己人

[ 本帖最后由 su_xx 于 2008-7-17 19:50 编辑 ]
作者: liwen    时间: 2008-7-17 17:07
在查询设计器中加入一个字段
合计:a+b+c

[ 本帖最后由 liwen 于 2008-7-17 17:09 编辑 ]
作者: su_xx    时间: 2008-7-17 17:54
原帖由 liwen 于 2008-7-17 17:07 发表
在查询设计器中加入一个字段
合计:a+b+c


楼上版主是不是没有看清我的内容,合计:a+b+c 这样的问题我想懂一点ACCESS都会.我也不会发贴求助了.
我不是要这样的结果:
ID      A      B      C     合计(不是我要的结果)     我要的结果是
1       10     20    30       60                                       60
2       20     30    40       90                                       150
3       30     40    50      120                                      270

我用自身迭加,ACCESS说不能引用自身.
作者: su_xx    时间: 2008-7-17 19:27
是这里论坛人气不是很旺,还是我的问题太幼稚?在线求助无望,最后开动自己的脑袋,终于把问题解决了.我上传附件,希望对有需要的人有所帮助.我发的是例子,实际上问题是我单位要求做每个客户各月不同种产品数量小合计再加一个累计数量
需要一个函数:有需要的人根据自己的要求修改一下就可以用了

  Public Function sums(a As Integer)
  Dim temp As Integer
  Dim i As Integer

  temp = 0
  
  For i = 1 To a
      temp = temp + DSum("A+B+C", "表1", "id =" & i)
  Next i
  
  sums = temp
  
End Function
作者: Trynew    时间: 2008-7-18 09:19
楼主DIY的精神可嘉,其实再变通一下,直接用查询就更好了,合计: DSum("A+B+C","表1","id <" & [iD]+1)
作者: su_xx    时间: 2008-7-18 11:38
原帖由 Trynew 于 2008-7-18 09:19 发表
楼主DIY的精神可嘉,其实再变通一下,直接用查询就更好了,合计: DSum("A+B+C","表1","id  

谢谢夸奖,版主你的方法对一个表更直接一些,是很不错.其实我在实际操作中不止1,2个表,我今天把哪函数稍作修改,增加了几个参数.变的更通用.
作者: fan0217    时间: 2008-7-18 12:36
原帖由 su_xx 于 2008-7-18 11:38 发表

谢谢夸奖,版主你的方法对一个表更直接一些,是很不错.其实我在实际操作中不止1,2个表,我今天把哪函数稍作修改,增加了几个参数.变的更通用.


方法都一样,多变通。直接用查询效率更高。当数据很多的时候这种感觉就更强烈了。
作者: xaxxax    时间: 2008-7-22 17:18
好,值得学习
作者: 刘青梅    时间: 2016-12-3 19:27
值得学习




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3