设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

[查询] 多个选项按钮多数据查询同一列 向长辈请教

[复制链接]
跳转到指定楼层
1#
发表于 2009-6-27 15:29:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 uincent 于 2009-6-28 10:59 编辑


还有我想在查询后可更改或删除添加 单价表里的数据
可联合查询后就不能改了
<机号转变>没用就是想查询方便用
<价格转>是想把(价格)写回<单价表>的(单价)
<单价表>的(单价)是手工的不一定准...

本帖子中包含更多资源

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

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2009-6-27 23:59:13 | 只看该作者
不明白你的意思.
3#
 楼主| 发表于 2009-6-28 10:30:19 | 只看该作者
不明白你的意思.
kelind 发表于 2009-6-27 23:59

主要问题我想知道如何让6个选项按钮起作用
如果能不用到(类型)列那就更好...起码可少键一个表..
4#
 楼主| 发表于 2009-6-28 12:54:26 | 只看该作者
没人理我....
5#
发表于 2009-6-28 14:42:19 | 只看该作者
自定义个函数,你想点查也可以
同一列多条件并查,多列多条件查。
Public Function 模糊搜索(数据源 As String, Optional 条件 As String, Optional 关系 As Boolean) As String
''=================================================================================
'' 函数说明:
'' 此函数执行成功则返回一个包含全字段模糊查询条件的查询语句,否则返回一个空字符串。
'' 参数说明:
'' 数据源 参数: 必填 可以是表名、查询名、SQL语句
'' 条件   参数: 可选 可以是任何字符,多个条件用空格隔开
'' 关系   参数: 可选 为真假值,确定多个条件之间的关系,为真关系是"or",为假关系是"and"
'' 使用示例:
'' Me.列表框1.RowSource = 模糊搜索("人员表", Me.文本1)
'' Me.子窗体.Form.RecordSource = 模糊搜索("Select * From 人员表", "张小 大力 001",true)
'
'' 设计:t小宝
'' 创建日期:2007-12-27
'' 更新日期:2007-12-30
''==================================================================================
On Error GoTo Err1
Dim dbs As DAO.Database
Dim r字段 As DAO.Recordset
Dim stsql As String
Dim s数组() As String
Dim s字段 As String
Dim s条件 As String
Dim s关系 As String
Dim i条件 As Integer
Dim i As Integer
Dim i1 As Integer

If Len(数据源) = 0 Then                                                            ' 不输入数据源,退出
    Exit Function
End If

' 转换数据源参数为SQL语句
If InStr(1, 数据源, "select", 1) = 0 Then                                           ' 如果数据源是查询语句
    stsql = "Select * From [" & 数据源 & "] "
Else                                                                                               ' 数据源是表名或查询名称
    stsql = "Select * From (" & 数据源 & ") As a "
End If

s条件 = Trim(条件)
If Len(s条件) = 0 Then                                                                  ' 不输入条件
    模糊搜索 = stsql
    Exit Function
End If

' 清除条件中多余的空格,转换为数组
Do Until InStr(1, s条件, "  ", 0) = 0
    s条件 = Replace(s条件, "  ", " ")                                               ' 用一个空格替换两个空格
Loop
s数组 = Split(s条件)
i条件 = UBound(s数组)

' 循环组合字段条件
Set dbs = CurrentDb
Set r字段 = dbs.OpenRecordset(stsql & " Where False")
With r字段
    For i = 0 To .Fields.Count - 1                                                   ' 循环组合条件字段
        s字段 = s字段 & "[" & .Fields(i).Name & "] & ' ' & "
    Next
    .close
End With
s字段 = Left(s字段, Len(s字段) - 8)                                              ' 去掉后面多余的字符

' 关系字符
If 关系 Then
    s关系 = "*' or "
Else
    s关系 = "*' and "
End If

For i1 = 0 To i条件                                                                           ' 循环条件
    模糊搜索 = 模糊搜索 & s字段 & "Like'*" & s数组(i1) & s关系        ' 组合字段和条件
Next
模糊搜索 = " Where " & Left(模糊搜索, Len(模糊搜索) - 4)               ' 去掉后面多余的字符,加上" Where "
模糊搜索 = stsql & 模糊搜索

Set r字段 = Nothing
Set dbs = Nothing

Exit1:
    Exit Function
Err1:
    模糊搜索 = ""
    MsgBox Err.Description, vbExclamation, "发生错误"
    Resume Exit1
End Function
6#
 楼主| 发表于 2009-6-28 18:13:57 | 只看该作者
我是新手...
具体的例子在哪?
可否传个
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-15 07:17 , Processed in 0.085694 second(s), 30 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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