设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

123下一页
返回列表 发新帖
查看: 3440|回复: 21
打印 上一主题 下一主题

[查询] 使用参数查询

[复制链接]
跳转到指定楼层
1#
发表于 2005-12-21 18:34:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
SELECT 表名.记录年, count(记录年) AS num
FROM 表名

GROUP BY 记录年
ORDER BY 记录年;


想在窗体中做一个组合框,用组合框选择表,然后执行查询。请教如何能实现?在sql里面,表名可以作为参数吗?

如果只能用vb,能写写代码吗,我不会vb。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2005-12-21 21:28:00 | 只看该作者
Dim strSQL as String
strSQL= "SELECT 表名.记录年, count(记录年) AS num " _
      & "FROM " & 组合框.Value _
      & " GROUP BY 记录年 " _
      & "ORDER BY 记录年; "


将strSQL赋值给窗体或子窗体的数据源属性,Requery窗体或子窗体的数据即可![em04]

[此贴子已经被作者于2005-12-21 13:46:17编辑过]

3#
 楼主| 发表于 2005-12-21 22:04:00 | 只看该作者
能否做成,在组合框中选择公司后,点击一个按钮,就执行一个查询,弹出查询结果(象普通的查询一样)。
4#
发表于 2005-12-21 23:14:00 | 只看该作者
可以的!

如下:

Private Sub Command0_Click()
    Dim OBJ As AccessObject
    For Each OBJ In CurrentData.AllQueries
        If OBJ.name = "ABC" Then DoCmd.DeleteObject acQuery, OBJ.name
    Next
    Dim strSQL As String
    strSQL = "CREATE VIEW ABC AS " _
           & "SELECT 表名.记录年, count(记录年) AS num " _
           & "FROM " & 组合框.Value _
           & " GROUP BY 记录年 " _
           & "ORDER BY 记录年; "
    Dim ADO As New ADODB.Command
    ADO.ActiveConnection = CurrentProject.Connection
    ADO.CommandText = strSQL
    ADO.Execute
    DoCmd.OpenQuery "ABC"
End Sub
5#
 楼主| 发表于 2005-12-21 23:35:00 | 只看该作者
不执行。有编译错误,在Dim ADO As New ADODB.Command

另外,能给程序配个说明吗?

非常感谢!
6#
发表于 2005-12-21 23:41:00 | 只看该作者
在VB编辑器中;

工具-->引用

Microsoft ActiveX Data Objects 2.X Library
7#
 楼主| 发表于 2005-12-21 23:55:00 | 只看该作者
出现问题

“运行时错误  only simple select queries are allowed in views”

到调试页面后  ADO.Execute为高亮
8#
发表于 2005-12-22 00:20:00 | 只看该作者
精简一下你的文件,上传上来帮你调试一下吧!
9#
发表于 2005-12-22 00:26:00 | 只看该作者
gaoqiwen 是个高手。,
10#
 楼主| 发表于 2005-12-22 00:49:00 | 只看该作者

有文件的

对  对  传个文件

希望是  在窗体中选择要做统计的公司  然后点击按钮  执行查询  统计年份(即表中的‘记录年’)

本帖子中包含更多资源

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

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

本版积分规则

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

GMT+8, 2024-9-22 02:09 , Processed in 0.110347 second(s), 35 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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