Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 1842|回复: 3

[已解决]用代码根据要求提取数据的问题

[复制链接]
发表于 2016-11-8 07:44 | 显示全部楼层 |阅读模式
本帖最后由 晓敏 于 2016-11-8 16:11 编辑

附件 根据要求提取数据附件.rar (8.42 KB, 下载次数: 10)
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2016-11-8 09:43 | 显示全部楼层    本楼为最佳答案   
Sub test()
    Dim A, B, i
    A = Sheets(1).Range("a1").CurrentRegion
    B = Application.Index(A, UBound(A), 0)
   
    For i = UBound(A) - 2 To 1 Step -2
        If compare(Application.Index(A, i, 0), B) Then Exit For
    Next i
   
    Sheets(2).Range("a1").Resize(1, UBound(A, 2)) = Application.Index(A, i, 0)
    Sheets(2).Range("a2").Resize(1, UBound(A, 2)) = Application.Index(A, i + 1, 0)
End Sub

Function compare(x, y) As Boolean
    Dim j, s
    ReDim arr(99)    '如果B:G都是0到99之间的整数
    For j = 2 To 7
        arr(x(j)) = arr(x(j)) + 1
        arr(y(j)) = arr(y(j)) + 1
    Next j
   
    For j = 0 To UBound(arr)
        If arr(j) > 1 Then s = s + 1
    Next j
    compare = s > 2
End Function
回复

使用道具 举报

发表于 2016-11-8 11:35 | 显示全部楼层
  1. Sub Greenhand()
  2.     Dim i&, j&, rng As Range, temrng As Range, rn As Range
  3.     With Sheets(1)
  4.     j = .Cells(65536, 1).End(3).Row
  5.     Set rng = .Range(.Cells(j, 2), .Cells(j, "g"))
  6.     For i = j - 1 To 1 Step -1
  7.         Set temrng = .Range(.Cells(i, 2), .Cells(i, "g"))
  8.         n = 0
  9.         For Each rn In temrng
  10.             If Application.WorksheetFunction.CountIf(rng, rn) > 0 Then
  11.                 n = n + 1
  12.             End If
  13.         Next
  14.             If n > 2 Then
  15.             .Cells(i, 1).Resize(2, 9).Copy Sheets(2).[a1]
  16.             Sheets(2).Activate
  17.             Sheets(2).[a1].Select
  18.             Exit For
  19.             End If
  20.     Next
  21.     End With
  22. End Sub
复制代码
回复

使用道具 举报

发表于 2016-11-8 11:38 | 显示全部楼层
本帖最后由 望帝春心 于 2016-11-8 11:42 编辑

参考附件。。。。。。。。。。写这么多还会被隐藏....

根据要求提取数据附件.zip

20.18 KB, 下载次数: 10

评分

参与人数 1 +2 收起 理由
晓敏 + 2

查看全部评分

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-20 13:37 , Processed in 0.304039 second(s), 14 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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