设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 3378|回复: 6
打印 上一主题 下一主题

[查询] 关于百分比查询

[复制链接]
1#
发表于 2011-5-31 02:18:35 | 显示全部楼层
把条件加到Dsum里面。由于对你的算法不清楚,所以不传附件了,这里给个SQL语句示例:
SELECT 表1.b, Format([b]/DSum("[b]","表1","等级='a'"),"Percent") AS 表达式1
FROM 表1
WHERE (表1.等级="a")
GROUP BY 表1.b;
2#
发表于 2011-5-31 16:59:40 | 显示全部楼层
本帖最后由 roych 于 2011-6-1 01:49 编辑

把这一句放在窗体的记录源里:
SELECT 表1.b, Format(/DSum("","表1","等级='a'"),"Percent") AS 表达式1 FROM 表1 WHERE (表1.等级)="a" GROUP BY 表1.b;
如果用代码的话,可以这样改:
Private Sub Form_Load()
mysum = DSum("b", "表1", "等级='a'")
strtext = "SELECT b, b/" & mysum & " AS 表达式1 FROM 表1 WHERE 等级='a' GROUP BY 表1.b"
Debug.Print strtext
Me.Form.RecordSource = strtext
End Sub
接着把里面的文本框改为百分比格式就好了。
一般来说,对于过于复杂的表达式,建议不必一步到位地写出来,很容易因为这个而降低代码的可读性。所以,我们就先把Dsum分出来,然后再嵌入表达式里面。而设置文本框格式则消除了Format函数。这样一来,代码就简单多了。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-5-5 18:07 , Processed in 0.090257 second(s), 25 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表