ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 1334|回复: 10

[求助] 请各位高手帮忙看看!筛选

[复制链接]

TA的精华主题

TA的得分主题

发表于 2017-6-25 01:10 | 显示全部楼层 |阅读模式
        sheet2中A列的数字是sheet1中的行数,我想筛选出1到33的数字里哪几个数字是sheet2中A列数字所对应的sheet1中行数BCDEFG列数字里没有的数字!sheet2中红色的数字是我对应A5的数字手动筛选出来的结果,请高手帮忙看能不能一键就能算出要筛选出来的结果!先谢谢了!!!       B       C       D     E      F     G                                

       6        11        14        23        26        30
      2        3        6        14        31        32
      1        6        14        22        25        26
      1        7        22        24        26        31
      4        10        18        19        25        27
      9        10        11        12        15        32
      7        8        13        22        30        32
      2        3        13        20        22        24
      5        17        21        22        28        32
      1        17        18        19        25        29
上面这些数字就是 sheet2中A5的数字所对应的sheet1中行数BCDEFG列的数字,1到33的数字里只有16和33是上面这些数字没有的,所以16和33就是我筛选出来的结果!希望我这样列出来大家一看就能明白





补充内容 (2017-6-30 11:28):
问题已解决非常感谢蓝桥玄霜版主和lsc900707!

筛选.rar

33.17 KB, 下载次数: 11

TA的精华主题

TA的得分主题

发表于 2017-6-25 10:26 | 显示全部楼层

TA的精华主题

TA的得分主题

 楼主| 发表于 2017-6-25 11:05 | 显示全部楼层

谢谢!你这是图片啊,代码怎么复制啊?!能做成附件吗?

TA的精华主题

TA的得分主题

发表于 2017-6-25 11:29 | 显示全部楼层
ysd1234 发表于 2017-6-25 11:05
谢谢!你这是图片啊,代码怎么复制啊?!能做成附件吗?

免费解决问题,要求不要太多,再说自己输入一遍也是学习

TA的精华主题

TA的得分主题

 楼主| 发表于 2017-6-25 11:39 | 显示全部楼层
Tadis 发表于 2017-6-25 11:29
免费解决问题,要求不要太多,再说自己输入一遍也是学习

就因为是小白啊,那些代码符号都不知道在哪?!

TA的精华主题

TA的得分主题

 楼主| 发表于 2017-6-25 12:35 | 显示全部楼层

按照你的代码输了一遍
Sub lqxs()
Dim arr, i&, brr, j&, y&, n&, s, aa
Dim d, d1, k
Set d = create0bject("scripting.dictionary")
Set d1 = create0bject("scripting.dictionary")
Application.ScreenUpdating = False
Sheet2.Activate
[b5:z500].ClearContents
arr = Sheet1.[a1].CurrentRegion
brr = [a5].CurrentRegion
For i = 1 To UBound(brr)
    For y = 1 To 33
        d1(y) = ""
    Next
    aa = Split(brr(i, 1), ",")
    For j = 0 To UBound(aa)
        n = Val(aa(j))
        For y = 2 To 7
            d(arr(n, y)) = ""
        Next
    Next
    k = d.key
    For j = 0 To UBound(k)
        If d1.exists(k(j)) Then d1.Remove k(j)
    Next
    Cells(i + 4, 2).Resize(1, d1.Count) = d1.keys
    d.RemoveAll: d1removeall
Next
Application.ScreenUpdating = True
End Sub
运行宏不对啊

TA的精华主题

TA的得分主题

发表于 2017-6-25 12:49 | 显示全部楼层
ysd1234 发表于 2017-6-25 12:35
按照你的代码输了一遍
Sub lqxs()
Dim arr, i&, brr, j&, y&, n&, s, aa

抄个代码都不认真,还在这里嚷嚷:
Sub lqxs()
Set d = CreateObject("Scripting.Dictionary")
Set d1 = CreateObject("Scripting.Dictionary")
Application.ScreenUpdating = False
Sheet2.Activate
[b5:z500].ClearContents
arr = Sheet1.[a1].CurrentRegion
brr = [a5].CurrentRegion
For i = 1 To UBound(brr)
    For y = 1 To 33
        d1(y) = ""
    Next
    aa = Split(brr(i, 1), ",")
    For j = 0 To UBound(aa)
        n = Val(aa(j))
        For y = 2 To 7
            d(arr(n, y)) = ""
        Next
    Next
    k = d.Keys
    For j = 0 To UBound(k)
        If d1.exists(k(j)) Then d1.Remove k(j)
    Next
    Cells(i + 4, 2).Resize(1, d1.Count) = d1.Keys
    d.RemoveAll: d1.RemoveAll
Next
Application.ScreenUpdating = True
End Sub

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2017-6-25 13:52 | 显示全部楼层
lsc900707 发表于 2017-6-25 12:49
抄个代码都不认真,还在这里嚷嚷:
Sub lqxs()
Set d = CreateObject("Scripting.Dictionary")

太谢谢了!我抄了四五十分钟才炒好(中间有几次没抄对),眼睛都看花了,我都是按照上面一个一个抄的啊,怎么还是没抄对哦......

TA的精华主题

TA的得分主题

发表于 2017-6-26 08:40 | 显示全部楼层
ysd1234 发表于 2017-6-25 13:52
太谢谢了!我抄了四五十分钟才炒好(中间有几次没抄对),眼睛都看花了,我都是按照上面一个一个抄的啊, ...

所以要让你抄代码:一是可以通过抄写代码学到很多书上学不到的知识;二是让你体会一下帮助你的人的辛劳:要下载你的附件,理解你的问题,编写相应的代码,并且测试这些代码,完成以后再发到网上。

TA的精华主题

TA的得分主题

发表于 2017-6-26 10:32 | 显示全部楼层
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-5-1 04:31 , Processed in 0.044309 second(s), 13 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

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