精华内容
下载资源
问答
  • 课件下载:https://share.weiyun.com/6Ckc1ivc下载的时候,记得另存一个文件名称关注公众号,观看视频解析:如果你对于高级筛选...其弊端也很明显:当你的条件不断的就发生变换,你就需要:不停的去重复选择数据源,条件区域...

    db1c9bc66bcfe749434ac802e4966f3b.png

    课件下载:

    https://share.weiyun.com/6Ckc1ivc

    0bf075be8f28f57904a1270d3fd88e9a.png

    下载的时候,记得另存一个文件名称

    关注公众号,观看视频解析:

    588c29da99f73aee0dbb4c1d67e10aa8.png

    如果你对于高级筛选还不是很了解,可以参考这个视频链接:

    高级筛选所有的用法

    高级筛选真的是很好用的功能,

    无论是一对多的查找,多对多的查找,范围的条件匹配

    高级筛选都是很好用的!

    其弊端也很明显:

    当你的条件不断的就发生变换,你就需要:

    不停的去重复选择数据源,条件区域,和最后满足条件放置的位置!

    这一章,我们会加入一点点的VBA人人都能够看懂,

    实现输入条件,选择按钮就可以直接输出结果,不需要轮回操作高级筛选的每一个步骤!

    93299fd5b32417cfdf60cf500d6e11e2.png

    有任何问题,你都可以选择公众号下方的课程搜索按钮,进行课程的查找

    如果你对于VBA感兴趣,想要深度学习,

    可以加入到我的VBA频道:

    e482d810647d684add77f4f072a1cf56.png

    除了基础部分的100多章

    一些优质套表也都是平均每章1到2个小时的教程解析.

    智能考勤表甘特项目管理器
    VBA管理清单VBA菜谱系列
    Listbox延申应用周览时间管理表
    VBA地图系列月览时间管理表
    窗体日历插件

    年事件管理表

    本章视频:记得给老徐赞在看!

    8f61c16287561c3a5ecc00750a9ead38.pngf51687703dcd1ffe02530769f1df8e8d.gif6f54e105aadaa9eaa40be0b4fc9bcada.png

    展开全文
  • 如图1,sheet1中根据品名,规格,单位能唯一确定一条记录,从数据筛选,把不重复的放到sheet2中,如图2 [img=https://img-bbs.csdn.net/upload/201709/04/1504513282_212385.jpg][/img] [img=...
  • 问题大概是这样的,一个很大的Excel文件,其中有些行是重复的,也就是说,有2行是完全一样的,而有些行是不重复的,现在的问题是要找出所有不重复或者重复的行,你没有听明白。你大概考虑了一下,用“VLOOKUP”查找...

    1.       问题由来

    早晨还没有完全醒来,你就被电话吵醒,有一个中学同学向你请教一个Excel的问题。作为一个所谓的Excel专家,你经常会受到此类骚扰。问题大概是这样的,一个很大的Excel文件,其中有些行是重复的,也就是说,有2行是完全一样的,而有些行是不重复的,现在的问题是要找出所有不重复或者重复的行,你没有听明白。你大概考虑了一下,用“VLOOKUP”查找一下,然后重新排序,应该就可以了,你需要试一下,然后告诉他怎么用,于是你告诉他,20分钟后再打电话给你。

    2.       问题解决的思路

    你首先打开Excel,输入一些测试数据,大概是这个样子:

    其中“张三”、“李四”有2个,其他只有一个,需要把他们分出来。首先在B列输入1,然后向下填充,在C列输入“VLOOKUP(A1,$A$1:$B$7,2,FALSE)”[①],如果找到,那么返回1,如果找不到,空着就可以了。结果C列全部变成了1 ,因为查找自己肯定可以找到,那么查找的Range必须要去除本行。

    你接着找了几个其他函数,“MATCH”,“INDEX”试了试,都无法办到;那么用IF函数呢,你开始试着写IF函数。先输入第4行吧,参数和引用区域回头再处理,或许Excel聪明到可以填充出你需要的引用区域。

    你输入了如下的IF函数:

    IF(OR(VLOOKUP(A4,A1:B3,2,FALSE),VLOOKUP(A4,A5:B7,2,FALSE)),1,0)

    真够复杂的,Excel应该开一个小窗口,然后作为代码输入这样的判断逻辑,IF函数可以嵌套7层,真不知道微软的工程师怎么想的[②],你一边嘟囔一边按下了回车,结果是“#N/A”,就是“值不可用”,你知道函数 VLOOKUP如果找不到需要的值,则返回错误值 #N/A,表达式里有了这个东东,所以不管什么计算,结果都是它了。

    从工具菜单选择“错误检查”,“显示计算步骤”,证实了你的猜测,第二个VLOOKUP函数返回的错误值 #N/A传递到了最后。

    这时,你同学的电话来了,你告诉他需要写一段小程序,你决定还是使用直接又简单的VBA来解决问题。

    3.       VBA程序

    打开VBA编辑器,插入一个模块,你不假思索的敲入了以下代码:

    Sub SelectDouble()

    Dim i As Long, j As Long

    For i = 1 To 7 Step 1

    For j = 1 To 7 Step 1

    '不比较相同的行

    If i <> j Then

    If Range("A" & i).Value = Range("A" & j).Value Then

    Range("E" & i).Value = 1

    End If

    End If

    Next j

    Next i

    End Sub

    点击运行,很好,是重复的都标志了1,没有重复的空着,然后排序就可以了。你很满意你还输入了一行注释。你拨通了你同学的电话,告诉他可以了,然后他打电话给你,你把程序念给他,告诉他该改什么地方。天知道他上学时学的什么语言,反正不是Basic,你得解释Dim是什么含义。经过一番折腾,他终于在电话另一端把代码输入了计算机。作为电信员工的他可以每天24小时用电话聊天,只是可怜你的手机话费单,你叹了口气,该去洗脸刷牙了。

    4.       效率

    洗完脸,刷完牙,你泡好了一杯咖啡,又回到了计算机旁边,电话又来了。你以为是告诉你已经完成了的“喜讯”,听到的却是说死机了,愣了0.1秒钟,你想想应该是程序还在执行或者是死循环。你问了他大概的数据量,知道大概有9000多条记录,还好,你想。

    你检查了一下代码,没有什么死循环,也许是你同学输入时有什么错误,你把循环改到1到10000,然后拿起杯子,咽了一口咖啡,往后靠了靠,等着计算结果。几分钟过去了,还是没有结束,你觉得有些奇怪,你敲了“Ctrl + Break”,暂停了程序,将鼠标放在i变量上,显示i还是24,TNND,你知道是Range函数太慢,算了,你打电话告诉你同学,大概需要几个小时才可以计算完成。你又喝了一口咖啡,自言自语道,比起手工筛选,毕竟很快了。

    但不就不到1万条纪录吗,Excel的VLOOKUP等内置函数一眨眼也就计算好了啊。

    4.1.      通过数组

    数组要比Range函数快一些,你把程序改了一下,定义了2个数组,首先把数据全部读入第一个数组,然后对数组进行操作,对于重复的,把第二个数组的相应部分写为1,计算完成后,根据第二个数组,把结果写回去。程序代码如下:

    Sub SelectDouble2()

    Dim i As Long, j As Long

    Dim max As Long

    Dim a() As String, b() As Long

    max = 10000

    ReDim a(max) As String

    ReDim b(max) As Long

    For i = 1 To max Step 1

    a(i) = Range("A" & i).Value

    Next i

    For i = 1 To max Step 1

    For j = 1 To max Step 1

    '不比较相同的行

    If i <> j Then

    If a(i) = a(j) Then

    b(i) = 1

    End If

    End If

    Next j

    Next i

    For i = 1 To max Step 1

    Range("F" & i).Value = b(i)

    Next

    End Sub

    你执行了一下,对于10000条纪录,大概需要不到5分钟。你觉得很满意,效率提高了几个数量级,你还没有忘记设置了一个max变量,这样,代码使用时改动就会少很多。

    4.2.      使用内置函数

    你又想起了VLOOKUP这个函数,真是阴魂不散。是啊,为什么VLOOKUP执行这么快,当然是因为它是编译好的,不是用VBA写的[③]。你灵机一动,为什么不用这个函数呢,在VBA中,可以使用Application.函数名,调用Excel的内置函数。这样,改过的代码如下:

    Sub SelectDouble3()

    Dim i As Long, j As Long, a, b

    For i = 2 To 9999 Step 1

    a = Application.VLookup(Range("A" & i), Range("A1:B" & (i - 1)), 2, False)

    b = Application.VLookup(Range("A" & i), Range("A" & (i + 1) & ":B1000"), 2, False)

    If IsError(a) And IsError(b) Then

    Range("G" & i).Value = 0

    End If

    Next i

    End Sub

    代码很短,但有一点复杂和讨厌,循环是从2到9999,因为为了防止VLOOKUP函数的Range范围失效,所以这两行需要手动处理。IsError函数来检测返回值,如果两个返回值都是错误,则此行为单一的没有重复的行,标志为0即可。程序执行速度和上面的差不多,至少你没有感觉出来差别。

    4.3.      继续Hack

    到这里,你还是觉得不满意,使用数组,数据量太大会内存吃紧,使用VLOOKUP函数,代码觉得很丑陋[④]。你不知道为什么想起来二分查找之类的东东,那么,查找前应该先排序,你在Excel里把数据排了序。现在的问题是需要循环2次,复杂度为N*N,如果…...,你想如果排好了序,只需要检查当前数值和下一个是否一样,如果一样,那么把当前和下一个位置标示出来,循环变量加2,跳过下一个,如果不一样,循环变量加1继续比较就可以了,代码如下:

    Sub SelectDouble4()

    Dim i As Long, Max As Long

    Max = 10000

    i = 1

    Do

    If Range("A" & i).Value = Range("A" & (i + 1)).Value Then

    Range("I" & i).Value = 1

    Range("I" & (i + 1)).Value = 1

    i = i + 2

    Else

    i = i + 1

    End If

    Loop While i < Max

    End Sub

    这个程序复杂度只有N,执行速度当然是你今天写的所有程序里最快的,而且内存占用也最小。你觉得很满意,露出了贼贼的笑容。

    5.       总结

    你打开了日志,开始记下了今天问题的解决过程。

    你想,嗯,如果只是想怎样把Range函数变快来解决问题,速度不会有本质的提高。速度提高,第一,排序才是关键,快速的查找和搜索都是要基于排好序的内容,比如二分查找,那么,为什么数据库要建索引,索引的有无对于查找速度影响很大,道理都是一样的了;第二,查找时没有回溯,对于查找过的内容直接跳过,这个和字符串的匹配算法,好像是KMP算法[⑤],思路是一样的,嗯,那么如果不是相同的内容不是2个,是多个,那么你可以使用一个循环来前溯,并且,对于不同的个数,可以标识为不同的数字。你忽然觉得自信满满,似乎要忘了已经失业半年的事实。

    (2004-11-23 夜)

    [①] 在表格或数值数组的首列查找指定的数值,并由此返回表格或数组当前行中指定列处的数值。当比较值位于数据表首列时,可以使用函数 VLOOKUP 代替函数 HLOOKUP。具体用法可以参考Excel帮助。

    [②] 作为程序员的你,一直觉得IF函数之类是浪费时间和多此一举,7层的IF函数怎么看得懂?但函数代表简单,你不想因为告诉你同学要写程序解决问题而把他吓坏。

    [③] 天知道微软用什么写的这些代码,也许是C,也许是C++,肯定不是Basic,也不是C#,写它时C#还没有出生呢。

    [④]或许是你没有写好。

    [⑤] 虽然不是科班出身,你也学过数据结构和算法的。

    展开全文
  • excel sql语句筛选重复数据 使用SQL语句进行数据筛选的方法,这个问题是我们很多人都很困惑的一个问题,excel sql语句筛选重复数据是我们非常常用的一个东西,也是我们工作和学习中必可少的一个数据公式,那么具体...

    d088b5b7822f216b80b209f6c0dc4427.png

    excel sql语句筛选重复数据 使用SQL语句进行数据筛选的方法,这个问题是我们很多人都很困惑的一个问题,excel sql语句筛选重复数据是我们非常常用的一个东西,也是我们工作和学习中必不可少的一个数据公式,那么具体我们要怎么做呢?下面就来看看这篇excel sql语句筛选重复数据 使用SQL语句进行数据筛选的方法的文章吧!

    在使用VBA对数据库进行访问时,利用SQL语句能够方便地实现对数据库的查询。本文使用SQL语句实现多条件查询,使用Select语句从“成绩管理.accdb”数据库文件中获取1班中数学和语文成绩均大于98分的学生记录,记录使用For...Next结构写入工作表的单元格。本文图文介绍使用SQL语句进行数据筛选的具体操作方法。

    1、启动Excel并打开工作表,打开Visual Basic编辑器,在工程资源管理器中插入一个模块,在模块的“代码”窗口中输入如下程序代码:

    Public Sub数据筛选()

    Dim mydata As String,mytable As String,SQL As String '声明变量

    Dim cn As ADODB.Connection '声明连接对象变量

    Dim rs As ADODB.Recordset '声明记录集对象

    Dim i As Integer '声明计数变量

    ActiveSheet.Cells.Clear '清空单元格

    mydata=ThisWorkbook.Path&"\成绩管理.accdb" '指定数据库文件

    mytable="成绩表" '指定工作表

    Set cn=New ADODB.Connection '创建连接对象变量

    With cn

    .Provider="microsoft.ace.oledb.12.0" '指明OLEDB提供者

    .Open mydata '打开数据库

    End With

    SQL="select*from"&mytable_&"where(班级= '1')and(数学>=98 or语文>=98)"'创建数据筛选命令

    Set rs=New ADODB.Recordset '创建记录集对象记录

    rs.Open SQL,cn,adOpenKeyset,adLockOptimistic '复制字段名

    For i=1 To rs.Fields.Count

    Cells(1,i)=rs.Fields(i-1).Name '将字段名写入单元格

    Next i

    Range("A2").CopyFromRecordset rs '复制数据

    rs.Close '关闭记录集对象

    cnn.Close '关闭连接对象

    Set rs=Nothing '删除记录集对象变量

    Set cn=Nothing '删除连接对象变量

    End Sub

    2、按F5键运行该程序,“成绩管理”数据库中“班级”为“1”,“语文”和“数学”成绩均大于98分的数据被筛选到工作表中,如图1所示。

    c89cd931461e4af7985e838b2f467e4e.png

    图1 数据筛选结果

    以上就是excel sql语句筛选重复数据 使用SQL语句进行数据筛选的方法全部内容了,希望大家看完有所启发,对自己的工作生活有所帮助,想要了解更多跟excel sql语句筛选重复数据 使用SQL语句进行数据筛选的方法请关注我们优词网!

    28ba8f67f4356d9c04a4d05d1e7dcfb3.png

    展开全文
  • 在Excel中使用VBA筛选数据

    万次阅读 2004-11-27 15:34:00
    问题大概是这样的,一个很大的Excel文件,其中有些行是重复的,也就是说,有2行是完全一样的,而有些行是不重复的,现在的问题是要找出所有不重复或者重复的行,你没有听明白。你大概考虑了一下,用“VLOOKUP”查找...

    <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

    1.       问题由来

    早晨还没有完全醒来,你就被电话吵醒,有一个中学同学向你请教一个Excel的问题。作为一个所谓的Excel专家,你经常会受到此类骚扰。问题大概是这样的,一个很大的Excel文件,其中有些行是重复的,也就是说,有2行是完全一样的,而有些行是不重复的,现在的问题是要找出所有不重复或者重复的行,你没有听明白。你大概考虑了一下,用“VLOOKUP”查找一下,然后重新排序,应该就可以了,你需要试一下,然后告诉他怎么用,于是你告诉他,20分钟后再打电话给你。

    2.       问题解决的思路

    你首先打开Excel,输入一些测试数据,大概是这个样子:

     

    <?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />

     

    其中“张三”、“李四”有2个,其他只有一个,需要把他们分出来。首先在B列输入1,然后向下填充,在C列输入“VLOOKUP(A1,$A$1:$B$7,2,FALSE)[1],如果找到,那么返回1,如果找不到,空着就可以了。结果C列全部变成了1 ,因为查找自己肯定可以找到,那么查找的Range必须要去除本行。

    你接着找了几个其他函数,“MATCH”,“INDEX”试了试,都无法办到;那么用IF函数呢,你开始试着写IF函数。先输入第4行吧,参数和引用区域回头再处理,或许Excel聪明到可以填充出你需要的引用区域。

    你输入了如下的IF函数:

    IF(OR(VLOOKUP(A4,A1:B3,2,FALSE),VLOOKUP(A4,A5:B7,2,FALSE)),1,0)

    真够复杂的,Excel应该开一个小窗口,然后作为代码输入这样的判断逻辑,IF函数可以嵌套7层,真不知道微软的工程师怎么想的[2],你一边嘟囔一边按下了回车,结果是“#N/A”,就是“值不可用”,你知道函数 VLOOKUP如果找不到需要的值,则返回错误值 #N/A,表达式里有了这个东东,所以不管什么计算,结果都是它了。

           从工具菜单选择“错误检查”,“显示计算步骤”,证实了你的猜测,第二个VLOOKUP函数返回的错误值 #N/A传递到了最后。

           这时,你同学的电话来了,你告诉他需要写一段小程序,你决定还是使用直接又简单的VBA来解决问题。

    3.       VBA程序

    打开VBA编辑器,插入一个模块,你不假思索的敲入了以下代码:

     

    Sub SelectDouble()

     

        Dim i As Long, j As Long

       

        For i = 1 To 7 Step 1

            For j = 1 To 7 Step 1

                '不比较相同的行

                If i <> j Then

                    If Range("A" & i).Value = Range("A" & j).Value Then

                        Range("E" & i).Value = 1

                    End If

                End If

            Next j

        Next i

               

    End Sub

     

    点击运行,很好,是重复的都标志了1,没有重复的空着,然后排序就可以了。你很满意你还输入了一行注释。你拨通了你同学的电话,告诉他可以了,然后他打电话给你,你把程序念给他,告诉他该改什么地方。天知道他上学时学的什么语言,反正不是Basic,你得解释Dim是什么含义。经过一番折腾,他终于在电话另一端把代码输入了计算机。作为电信员工的他可以每天24小时用电话聊天,只是可怜你的手机话费单,你叹了口气,该去洗脸刷牙了。

    4.       效率

    洗完脸,刷完牙,你泡好了一杯咖啡,又回到了计算机旁边,电话又来了。你以为是告诉你已经完成了的“喜讯”,听到的却是说死机了,愣了0.1秒钟,你想想应该是程序还在执行或者是死循环。你问了他大概的数据量,知道大概有9000多条记录,还好,你想。

    你检查了一下代码,没有什么死循环,也许是你同学输入时有什么错误,你把循环改到110000,然后拿起杯子,咽了一口咖啡,往后靠了靠,等着计算结果。几分钟过去了,还是没有结束,你觉得有些奇怪,你敲了“Ctrl + Break”,暂停了程序,将鼠标放在i变量上,显示i还是24TNND,你知道是Range函数太慢,算了,你打电话告诉你同学,大概需要几个小时才可以计算完成。你又喝了一口咖啡,自言自语道,比起手工筛选,毕竟很快了。

    但不就不到1万条纪录吗,ExcelVLOOKUP等内置函数一眨眼也就计算好了啊。

    4.1.      通过数组

    数组要比Range函数快一些,你把程序改了一下,定义了2个数组,首先把数据全部读入第一个数组,然后对数组进行操作,对于重复的,把第二个数组的相应部分写为1,计算完成后,根据第二个数组,把结果写回去。程序代码如下:

     

    Sub SelectDouble2()

     

        Dim i As Long, j As Long

        Dim max As Long

        Dim a() As String, b() As Long

       

        max = 10000

       

        ReDim a(max) As String

        ReDim b(max) As Long

       

        For i = 1 To max Step 1

            a(i) = Range("A" & i).Value

        Next i

       

        For i = 1 To max Step 1

            For j = 1 To max Step 1

                '不比较相同的行

                If i <> j Then

                    If a(i) = a(j) Then

                        b(i) = 1

                    End If

                End If

            Next j

        Next i

       

        For i = 1 To max Step 1

            Range("F" & i).Value = b(i)

        Next

               

    End Sub

     

    你执行了一下,对于10000条纪录,大概需要不到5分钟。你觉得很满意,效率提高了几个数量级,你还没有忘记设置了一个max变量,这样,代码使用时改动就会少很多。

    4.2.      使用内置函数

    你又想起了VLOOKUP这个函数,真是阴魂不散。是啊,为什么VLOOKUP执行这么快,当然是因为它是编译好的,不是用VBA写的[3]。你灵机一动,为什么不用这个函数呢,在VBA中,可以使用Application.函数名,调用Excel的内置函数。这样,改过的代码如下:

     

    Sub SelectDouble3()

     

        Dim i As Long, j As Long, a, b

       

        For i = 2 To 9999 Step 1

            a = Application.VLookup(Range("A" & i), Range("A1:B" & (i - 1)), 2, False)

            b = Application.VLookup(Range("A" & i), Range("A" & (i + 1) & ":B1000"), 2, False)

            If IsError(a) And IsError(b) Then

                Range("G" & i).Value = 0

            End If

        Next i

               

    End Sub

     

    代码很短,但有一点复杂和讨厌,循环是从29999,因为为了防止VLOOKUP函数的Range范围失效,所以这两行需要手动处理。IsError函数来检测返回值,如果两个返回值都是错误,则此行为单一的没有重复的行,标志为0即可。程序执行速度和上面的差不多,至少你没有感觉出来差别。

    4.3.      继续Hack

    到这里,你还是觉得不满意,使用数组,数据量太大会内存吃紧,使用VLOOKUP函数,代码觉得很丑陋[4]。你不知道为什么想起来二分查找之类的东东,那么,查找前应该先排序,你在Excel里把数据排了序。现在的问题是需要循环2次,复杂度为N*N,如果…...,你想如果排好了序,只需要检查当前数值和下一个是否一样,如果一样,那么把当前和下一个位置标示出来,循环变量加2,跳过下一个,如果不一样,循环变量加1继续比较就可以了,代码如下:

     

    Sub SelectDouble4()

     

        Dim i As Long, Max As Long

       

        Max = 10000

        i = 1

        Do

            If Range("A" & i).Value = Range("A" & (i + 1)).Value Then

                Range("I" & i).Value = 1

                Range("I" & (i + 1)).Value = 1

                i = i + 2

            Else

                i = i + 1

            End If

        <?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />Loop While i < Max

                   

    End Sub

     

    这个程序复杂度只有N,执行速度当然是你今天写的所有程序里最快的,而且内存占用也最小。你觉得很满意,露出了贼贼的笑容。

    5.       总结

    你打开了日志,开始记下了今天问题的解决过程。

    你想,嗯,如果只是想怎样把Range函数变快来解决问题,速度不会有本质的提高。速度提高,第一,排序才是关键,快速的查找和搜索都是要基于排好序的内容,比如二分查找,那么,为什么数据库要建索引,索引的有无对于查找速度影响很大,道理都是一样的了;第二,查找时没有回溯,对于查找过的内容直接跳过,这个和字符串的匹配算法,好像是KMP算法[5],思路是一样的,嗯,那么如果不是相同的内容不是2个,是多个,那么你可以使用一个循环来前溯,并且,对于不同的个数,可以标识为不同的数字。你忽然觉得自信满满,似乎要忘了已经失业半年的事实。



    [1] 在表格或数值数组的首列查找指定的数值,并由此返回表格或数组当前行中指定列处的数值。当比较值位于数据表首列时,可以使用函数 VLOOKUP 代替函数 HLOOKUP。具体用法可以参考Excel帮助。

    [2] 作为程序员的你,一直觉得IF函数之类是浪费时间和多此一举,7层的IF函数怎么看得懂?但函数代表简单,你不想因为告诉你同学要写程序解决问题而把他吓坏。

    [3] 天知道微软用什么写的这些代码,也许是C,也许是C++,肯定不是Basic,也不是C#,写它时C#还没有出生呢。

    [4]或许是你没有写好。

    [5] 虽然不是科班出身,你也学过数据结构和算法的。

    展开全文
  • 如果局限于一种方法,去探索其他方法,往往会错失一些机会。想想看,如果你能用一半的时间完成你手头的工作,节省下来的时间可以做很多有意义的事情的。通过自动化,让人们从一些简单重复的劳动中解放出来,投入到...
  • 数据重复一直是数据整理过程中常见的问题之一,Excel解决方法有【删除重复项】、【高级筛选】、【数据透视表】、SQL语句、VBA的字典和集合等等……各有所长也各有所短。可能还有小伙伴说还有函数……那啥……坦白...
  • 我在ACEESS做了一个窗体,内含一个子窗体,子窗体的控件来源是一个没有筛选条件的查询,在窗体里用VBA生成子窗体筛选条件。例:在窗体输入筛选条件后,子窗体筛选结果为:客户 字段1 字段2 ....(子窗体页眉)A 1 2B 0 ...
  • 之前做过用用VBA筛选数据,去重的相关工作,但是后面给忘记了,最近需要用到,又重新写了一个。鉴于此,还是做一个归纳,以后再需要的时候也方便一些。 VBA主要用在Excel中,别的就说了,只说Excel中的情况 一个...
  • 各位朋友,你们好,今天和你们分享Excel中提取不重复值的几种方法,着重介绍【5种】基础操作方法,另外附送一个VBA去重代码,拿去就可以直接使用。一、基础操作方法1、数据工具直接去重(见下图)数据工具去重2、高级...
  • 哈罗,我是星光,话说数据去重复一直是数据整理过程中常见的问题之一,Excel解决方法有...如下图所示,A列是一些数据,可能存在重复值,需要在C列得出不重复值,并告知不重复值的个数。代码如下:Sub Mydistinct() ...
  • 以下代码为工作中的真实案例(不是真实数据~~~),本人是销售方,每季度都要和关联方进行对账,这工作量大的可怕估计有五六十家关联方,我又能把所有数据都发送给关联方,最好是根据每个关联方的名字来进行筛选,...
  • 但是好像做到对重复的列进行筛选。 一开始博主想通过“For Each”来遍历循环,判断新建的表中是否存在这一行数据,存在丢掉,存在丢弃。但是觉得这种方法太“笨”了,所以想在互联网上找一下解决方法,但似乎...
  • VBA常用技巧

    2014-12-21 16:39:28
    技巧37 使用高级筛选获得不重复记录 12 技巧38 工作表的保护与解除保护 12 技巧39 奇偶页打印 12 第3章 Wordbook(工作簿)对象 12 技巧40 工作簿的引用方法 12 40-1 使用工作簿的名称 12 40-2 使用工作簿的索引号 ...
  • VBA编程技巧大全

    2013-08-05 09:03:19
    技巧37 使用高级筛选获得不重复记录 93 技巧38 工作表的保护与解除保护 94 技巧39 奇偶页打印 97 第3章 Wordbook(工作簿)对象 99 技巧40 工作簿的引用方法 99 40-1 使用工作簿的名称 99 40-2 使用工作簿的索引号 ...
  • VBA--For循环

    2021-02-06 17:23:56
    例子:对每个相同的表删除CDE列、将金额放在日期后面、筛选数量大于200的数据 点了录制宏按钮之后,就一步步正确操作,可逆,所录制的每个动作都会被记录重复,录制完后,就点“停止录制”按钮。 ...
  • 04065引用连续单元格区域集合内的各个连续的单元格区域 04066引用工作簿窗口范围内所有的单元格 04067引用设定了允许滚动区域的单元格区域 04068引用指定了左上角和右下角的单元格区域(之一) 04069引用指定了...
  • 58.统计数组中非重复数据个数 59.摘取子字符串 60.计算20000余个汉字的笔画 61.删除当前工作表中的全部超连接 62.取得相近数据 63.提取定串中汉字 64.搜索重复数据(选定范围) 65.字符型转数字型 66.小写人民币转大写...
  • 今天公司要求用VBA处理一个比较大的表格,主要涉及到筛选出四个表中某两个共有字段的无重复值,由于接触VBA时间长,思路有限,所以感觉没有直接解决问题的好办法... 后来参考了一下以前的手工解决方法,突然想起了...
  • 然后逐步介绍创建数据透视表、自定义透视表、查看视图数据、在透视表内进行计算、使用数据透视图等可视化工具、分析数据源、共享数据表、使用和分析OLAP数据、在透视表中使用宏和VBA等内容,并集中解答了一些常见的...
  • 然后逐步介绍创建数据透视表、自定义透视表、查看视图数据、在透视表内进行计算、使用数据透视图等可视化工具、分析数据源、共享数据表、使用和分析OLAP数据、在透视表中使用宏和VBA等内容,并集中解答了一些常见的...
  • 然后逐步介绍创建数据透视表、自定义透视表、查看视图数据、在透视表内进行计算、使用数据透视图等可视化工具、分析数据源、共享数据表、使用和分析OLAP数据、在透视表中使用宏和VBA等内容,并集中解答了一些常见的...
  • 然后逐步介绍创建数据透视表、自定义透视表、查看视图数据、在透视表内进行计算、使用数据透视图等可视化工具、分析数据源、共享数据表、使用和分析OLAP数据、在透视表中使用宏和VBA等内容,并集中解答了一些常见的...
  • • 利用高级筛选选择不重复的记录 • 三个“关系或”条件的高级筛选 • 使用计算条件的Excel高级筛选 • 同时使用“关系与”和“关系或”的Excel高级筛选 • 创建分类汇总 • 列表 • Excel分列功能 • 使用“导入...
  • EXCEL比较两个EXCEL不同

    2021-04-09 15:22:31
    请找出重复数据(有一条数据在数据库中重复了) 但是是IP地址啊!!!!!!!我是眼瞎了都找出来的! 我吐了。 咋找? 花了两个小时整理了一下方式。 推荐第二种。 首先,EXCEL添加筛选,选择要比较的文本,...
  • Excel百宝箱9.0无限制破解版

    热门讨论 2012-02-03 19:05:29
    【按颜色筛选】:让Excel 2003也可以按背景色筛选数据,2007或者2010用户需要使用  【按颜色排序】:让Excel 2003也可以按背景色排序数据,2007或者2010用户需要使用 【返回首页】:配合建立工作表目录工具使用,...
  • Excel百宝箱

    2012-10-27 17:09:21
    【按颜色筛选】:让Excel 2003也可以按背景色筛选数据,2007或者2010用户需要使用  【按颜色排序】:让Excel 2003也可以按背景色排序数据,2007或者2010用户需要使用 【返回首页】:配合建立工作表目录工具使用,...
  • excel 工具箱

    2012-01-22 15:04:34
    【按颜色筛选】:让Excel 2003也可以按背景色筛选数据,2007或者2010用户需要使用  【按颜色排序】:让Excel 2003也可以按背景色排序数据,2007或者2010用户需要使用 【返回首页】:配合建立工作表目录工具使用,...

空空如也

空空如也

1 2 3 4 5
收藏数 97
精华内容 38
关键字:

vba筛选不重复数据