奶香花卷 发表于 2013-7-3 07:08

求个excel数据筛选公式…

先在A列找到相同的数据组
例如找到(A1,A3,A6)都等于20,(A11,A15,A20)都等于40,等


然后对比(E1,E3,E6),(E11,E15,E20)等,如果有不等就输出所有A列等于20或40的行。

也就是要找到A列相等但E列不等的行………

----发送自 samsung Nexus S,Android 4.1.2

lionheart 发表于 2013-7-3 09:05

>对比(E1,E3,E6),(E11,E15,E20)等,如果有不等

这个不等是不等於什么,e1/=e3或者还是e1/=a1?

a列的“20、40”是事先可以指定的数字么,还是要在a列中寻找重复任意数值?

playlogic 发表于 2013-7-3 10:30

可以试一下在第一行写下公式:=IF(COUNTIFS($A:$A,A1,$E:$E,"<>"&E1),A1,""),再往下拖动公式。

奶香花卷 发表于 2013-7-3 15:56

引用第1楼lionheart于2013-07-03 09:05发表的:
>对比(E1,E3,E6),(E11,E15,E20)等,如果有不等这个不等是不等於什么,e1/=e......

@lionheart
是E之间不等就整行输出到另外一个工作表
是在A中寻找任意重复值

----发送自 samsung Nexus S,Android 4.1.2

lionheart 发表于 2013-7-3 17:47

回 3楼(奶香花卷) 的帖子

用a列和e列构造一个辅助列,原则是a列不相等情况下,辅助列也不会相等,视数据特征可以用相加、相乘、立方相乘、字符串相加、字符串插值相加、或者彻底点把a列hash完再处理。

然后用countif统计重复数据,筛选出a列重复,辅助列不重复的即可

sodr 发表于 2013-7-3 18:07

少年你应该应VBA,献个丑,没优化的VBA程序
按理说第二次出相同数据时可以略过的,懒得再写了


   
    Dim arr_01(1 To 1000) As Integer   
    Dim k1 As Integer
    Dim k2 As Integer
    Dim k3 As Integer
    For i = 1 To 1000            '计算列A 1~1000      
         If Cells(i, 1).Value = "" Then      
            Exit For                '空数据退出      
      End If      
      k3 = 1   
      k1 = Cells(i, 1).Value   
      For k = i To 1000      '统计与该数据相同的数有多少个      
            k2 = Cells(k, 1).Value      
            If k1 = k2 Then            
                arr_01(k3) = k         
                k3 = k3+1      
             Endif   
      Next   
         For k = 1 To k3      
             k2 = Cells(arr_01(k), 5).Value    '对应列E的数据      
            If k2 <> Cells(arr_01(k), 1) Then            
                Cells(arr_01(k), 6) = "Not Match"    'E列不等于该值的行输出到F列      
            Endif   
      Next   
    Next

FSS 发表于 2013-7-4 11:04

发现有问题了...

caibing 发表于 2013-7-4 11:23

脑海里第一反应也是VBA...

狮心大大的看起来好高端没看懂...

lionheart 发表于 2013-7-4 13:38

能写代码的当然还是上vba啦,无奈不会只好折腾函数

http://i39.tinypic.com/wguumr.jpg

g列是=A1&","&E1

后面三列是=AND(COUNTIF(A:A,A1)>1,COUNTIF(G:G,G1)=1)
页: [1]
查看完整版本: 求个excel数据筛选公式…