Office中国论坛/Access中国论坛

标题: 【已解决】如何查询子窗体中字段在另一表中有重复的记录 [打印本页]

作者: itso    时间: 2014-7-12 21:24
标题: 【已解决】如何查询子窗体中字段在另一表中有重复的记录
本帖最后由 itso 于 2014-7-16 09:00 编辑

我有一窗体,绑字一个数据表,其中部份字段值在另一表中是存在重复,我想设置一个查询按钮,一点击就把重复数据筛选出来并且底色变红作为一个提示,请问如何实现?详见如下:
窗体绑定表
[attach]54220[/attach]

其中,a1、a4、b2、c3在物料信息表中存在两条以上的记录,现在想,点击"重复项检查",可以筛选到以下效果
[attach]54221[/attach]



作者: itso    时间: 2014-7-13 09:48
本帖最后由 itso 于 2014-7-13 11:09 编辑

沉了!~顶上
作者: stonewood    时间: 2014-7-13 20:49
直接做一个符合条件的查询就可以了,不用了管条件格式了。呵呵
作者: itso    时间: 2014-7-13 22:35
本帖最后由 itso 于 2014-7-14 00:41 编辑

顶上
作者: itso    时间: 2014-7-14 00:53
还没解决呢
作者: itso    时间: 2014-7-14 08:14
早上好!各位
作者: 盗梦    时间: 2014-7-14 09:02
可以弄条件格式,不过会很慢。建议分别针对每个物料弄一个查询统计一下对应的个数
作者: itso    时间: 2014-7-14 10:05
盗梦 发表于 2014-7-14 09:02
可以弄条件格式,不过会很慢。建议分别针对每个物料弄一个查询统计一下对应的个数

条件格式只可以实现底色变红,但查询还是做不了
作者: access学习交流    时间: 2014-7-14 12:25
access 当Excel用?直接用查询求出来就好了吧
作者: roych    时间: 2014-7-14 13:15
效果图
[attach]54226[/attach]
解决方案
[attach]54225[/attach]
注意:当记录较多时,Dcount函数运行会慢一些,甚至可能闪屏,所以我不是很支持这种做法。

作者: itso    时间: 2014-7-14 13:47
roych 发表于 2014-7-14 13:15
效果图

解决方案

大大,我知道这样去写条件格式,我其实想实现的时查询存在重复项!一点,可以查询结果!你看我效果图,只有a、b、c订单信息
作者: roych    时间: 2014-7-14 14:01
itso 发表于 2014-7-14 13:47
大大,我知道这样去写条件格式,我其实想实现的时查询存在重复项!一点,可以查询结果!你看我效果图,只 ...

把数据源改成你需要的查询不就好了?
作者: itso    时间: 2014-7-14 14:05
本帖最后由 itso 于 2014-7-14 14:08 编辑
roych 发表于 2014-7-14 14:01
把数据源改成你需要的查询不就好了?

我试过把Dcount放到查询里,但总不行!~所以才求助!~我用的是这种查询
On Error GoTo err_Option76_Click
Dim strwhere As String

If Me.Option76.Value = True Then

    ' strwhere = strwhere & "条件格式代码 And "

  End If

  If Len(strwhere) > 0 Then
     strwhere = Left(strwhere, Len(strwhere) - 5)
  End If


作者: zpy2    时间: 2014-7-15 06:42
感觉每个物料设一个字段,是否可以改一下?
变成物料名称,物料类型2个字段。
这样可能好查询一些。
作者: zpy2    时间: 2014-7-15 06:46
物料1,物料2是类型。
a1,b1是名称,用交叉表查询生成视图。
作者: itso    时间: 2014-7-15 08:11
zpy2 发表于 2014-7-15 06:42
感觉每个物料设一个字段,是否可以改一下?
变成物料名称,物料类型2个字段。
这样可能好查询一些。

不行的,必须这样放的!~
作者: itso    时间: 2014-7-15 08:12
还没解决!~~~~~~~~~~~~~~~`T_T
作者: itso    时间: 2014-7-15 12:55
沉了~
作者: roych    时间: 2014-7-15 17:30
别灌水~~~试试这个看看。必要的话请自行修改自定义函数的条件。这里只是用一个条件
[attach]54228[/attach]
作者: itso    时间: 2014-7-16 08:59
本帖最后由 itso 于 2014-7-16 12:19 编辑
roych 发表于 2014-7-15 17:30
别灌水~~~试试这个看看。必要的话请自行修改自定义函数的条件。这里只是用一个条件

谢谢版主,在你的基础上,我实现了!我其实想要的是点击按钮的动作,我把你写的Function,在查询上中调用,变成这样,就得到我想要的结果了!
strwhere = strwhere & "(((getFormat([物料1]))=True)) OR (((getFormat([物料2]))=True)) OR (((getFormat([物料3]))=True)) OR (((getFormat([物料4]))=True)) And "

但发现一个问题,主要我的物料1、物料2、物料3、物料4中有空字段存存,就会报错!~麻烦帮忙看一下!

作者: roych    时间: 2014-7-16 13:10
itso 发表于 2014-7-16 08:59
谢谢版主,在你的基础上,我实现了!我其实想要的是点击按钮的动作,我把你写的Function,在查询上中调用 ...

呃,我建议是把getFormat里的条件重新设置下(例如,多加几个参数)。晚些再帮你看看。
作者: itso    时间: 2014-7-17 08:24
roych 发表于 2014-7-16 13:10
呃,我建议是把getFormat里的条件重新设置下(例如,多加几个参数)。晚些再帮你看看。

大大,早晨!~好了吗?
作者: roych    时间: 2014-7-17 09:47
先试着用用。以后再跟你说存在的问题。
作者: itso    时间: 2014-7-17 10:06
roych 发表于 2014-7-17 09:47
先试着用用。以后再跟你说存在的问题。

大大,附件有问题~打不开的!
作者: roych    时间: 2014-7-17 10:15
等等。可能另存为2002-2003格式了。我改成2000格式试试看
[attach]54261[/attach]
作者: itso    时间: 2014-7-17 10:36
roych 发表于 2014-7-17 10:15
等等。可能另存为2002-2003格式了。我改成2000格式试试看

可以了,谢谢大大!~




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