Excel精英培训网

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

[已解决]数据提取求助

[复制链接]
发表于 2017-5-8 14:30 | 显示全部楼层 |阅读模式
本帖最后由 jk0932 于 2017-5-9 13:50 编辑

如附件所示,需要提取“原始数据”Sheet的 每个姓名对应的每天最晚的一个时间,然后放在结果表里;

虽然结果不满意还是算解决部分吧

最佳答案
2017-5-8 15:28
B1
=LOOKUP(1,0/FIND($A2,LOOKUP(ROW(原始数据!$A$2:$A$35),ROW(原始数据!$A$2:$A$35)/(原始数据!$A$2:$A$35<>""),原始数据!$A$2:$A$35)),原始数据!F$2:F$35)

========================
没见过这么坑的 , 合并单元格 下面内容还不一致,
ABCD 别要了 , 直接用 姓名.

数据提取求助.rar

12.14 KB, 下载次数: 9

excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2017-5-8 15:03 | 显示全部楼层
  1. Sub aaa()
  2. Dim i&, j&, n&, arr(1 To 10000, 1 To 3), brr, r&
  3. With Sheets(1)
  4.   For i = 2 To .[a65536].End(3).Row
  5.     n = .Cells(i, 1).MergeArea.Rows.Count
  6.     brr = Split(.Cells(i, 1), " ")
  7.     For j = 0 To UBound(brr)
  8.       r = r + 1
  9.       arr(r, 1) = brr(j)
  10.       arr(r, 2) = .Cells(i + n - 1, 6)
  11.       arr(r, 3) = .Cells(i + n - 1, 7)
  12.     Next j
  13.     i = i + n - 1
  14.   Next i
  15. End With
  16. Sheets(2).[a2].Resize(r, 3) = arr
  17. End Sub
复制代码
回复

使用道具 举报

发表于 2017-5-8 15:28 | 显示全部楼层    本楼为最佳答案   
B1
=LOOKUP(1,0/FIND($A2,LOOKUP(ROW(原始数据!$A$2:$A$35),ROW(原始数据!$A$2:$A$35)/(原始数据!$A$2:$A$35<>""),原始数据!$A$2:$A$35)),原始数据!F$2:F$35)

========================
没见过这么坑的 , 合并单元格 下面内容还不一致,
ABCD 别要了 , 直接用 姓名.
回复

使用道具 举报

 楼主| 发表于 2017-5-8 18:35 | 显示全部楼层
砂海 发表于 2017-5-8 15:28
B1
=LOOKUP(1,0/FIND($A2,LOOKUP(ROW(原始数据!$A$2:$A$35),ROW(原始数据!$A$2:$A$35)/(原始数据!$A$2:$A$ ...

只能得到日期啊,时间呢?最晚时间呢?
回复

使用道具 举报

发表于 2017-5-8 18:52 | 显示全部楼层
右拉
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-3-29 23:51 , Processed in 0.544818 second(s), 9 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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