设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
楼主: pascal331
打印 上一主题 下一主题

[查询] 请各位看看下述功能应怎么实现(access2010)

[复制链接]
11#
发表于 2011-12-10 17:03:14 | 只看该作者
还要避免null值错误!
12#
 楼主| 发表于 2011-12-10 17:32:25 | 只看该作者
  1. Private Sub 地区_AfterUpdate()
  2.     Dim strT As String

  3.     Dim vItem As Variant

  4.     Dim sSQL As String

  5.     If 地区 = "" Then
  6.    
  7.         sSQL = "select * from dzj"

  8.     Else

  9.         For Each vItem In Me.地区.ItemsSelected

  10.             strT = strT & "'" & vItem & "',"

  11.         Next

  12.         sSQL = "select * from dzj where 地区 in (" & strT & ")"
  13.     If strT = "" Then
  14.     sSQL = "select * from dzj"
  15.    
  16.     End If
  17.     End If
  18.     Me.dzj.Form.RecordSource = sSQL

  19. End Sub
复制代码
还是无法筛选啊?
求解
13#
 楼主| 发表于 2011-12-10 17:34:24 | 只看该作者
本帖最后由 pascal331 于 2011-12-10 17:35 编辑
Henry D. Sy 发表于 2011-12-10 17:03
还要避免null值错误!
  1. Private Sub 地区_AfterUpdate()
  2.     Dim strT As String

  3.     Dim vItem As Variant

  4.     Dim sSQL As String

  5.     If 地区 = "" Then
  6.    
  7.         sSQL = "select * from dzj"

  8.     Else

  9.         For Each vItem In Me.地区.ItemsSelected

  10.             strT = strT & "'" & vItem & "',"

  11.         Next

  12.         sSQL = "select * from dzj where 地区 in (" & strT & ")"
  13.     If strT = "" Then
  14.     sSQL = "select * from dzj"
  15.    
  16.     End If
  17.     End If
  18.     Me.dzj.Form.RecordSource = sSQL

  19. End Sub
复制代码
还是无法筛选啊?只是在不选的时候能全显
求解
14#
发表于 2011-12-10 17:42:12 | 只看该作者
strT = strT & "'" & Me.地区ItemData(vItem) & "',"

15#
发表于 2011-12-10 17:52:16 | 只看该作者
本帖最后由 Henry D. Sy 于 2011-12-10 18:01 编辑

把全部去掉:
  1. Private Sub 地区_AfterUpdate()
  2.     Dim strT As String
  3.     Dim vItem As Variant
  4.     Dim sSQL As String
  5.     For Each vItem In Me.地区.ItemsSelected
  6.         strT = strT & "'" & Me.地区.ItemData(vItem) & "',"
  7.     Next
  8.     If strT = "" Then
  9.         MsgBox "请选择!"
  10.         Exit Sub
  11.     End If
  12.     sSQL = "select * from dzj where 地区 in (" & strT & ")"
  13.     Me.dzj.Form.RecordSource = sSQL
  14. End Sub
复制代码
16#
 楼主| 发表于 2011-12-10 20:10:34 | 只看该作者
Henry D. Sy 发表于 2011-12-10 17:52
把全部去掉:

非常感谢,功能已实现。我现在慢慢分析学习下您给的代码
谢谢!!
17#
 楼主| 发表于 2011-12-10 23:10:23 | 只看该作者
本帖最后由 pascal331 于 2011-12-11 09:44 编辑


Henry D. Sy 发表于 2011-12-10 17:52
把全部去掉:


万分感激您对我的耐心帮助,这使我在access的学习中增加信心
在分析您给的代码后我初步了解了vb sql和recordsource的用法并实际运用到了自制程序的其它窗体中,去除了多余的两个查询与子窗体。

本帖子中包含更多资源

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

x
18#
发表于 2011-12-11 08:53:38 | 只看该作者
建议楼主把改好后的文件转换到低版本的,然后下载一下学习学习{:soso_e181:}
19#
发表于 2011-12-11 09:51:59 | 只看该作者
谢谢楼主分享
20#
发表于 2011-12-11 13:47:20 | 只看该作者
pascal331 发表于 2011-12-10 23:10
万分感激您对我的耐心帮助,这使我在access的学习中增加信心
在分析您给的代码后我初步了解了vb s ...

简单的方法就是用分组报表,然后分组统计!
还可以用主子报表,但我打不开你的库,不知道库的具体情况,也就不明白如何连接主子表。
也许需要重新生成连接字段!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-2-24 20:01 , Processed in 0.106911 second(s), 32 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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