Excel精英培训网

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

[已解决]查询相同数据的问题

[复制链接]
发表于 2014-9-7 12:22 | 显示全部楼层 |阅读模式
本帖最后由 晓敏 于 2014-9-8 00:07 编辑

附件 查询相同一组数据.rar (195.24 KB, 下载次数: 29)
发表于 2014-9-7 15:26 | 显示全部楼层
回复

使用道具 举报

 楼主| 发表于 2014-9-7 16:12 | 显示全部楼层
dsmch 发表于 2014-9-7 15:26
表格无内容测试什么?

谢谢老师关注。考虑到上传文件过大,过不了。才把有些表格留空的。附件中示范的那些表格,是有数据的。
回复

使用道具 举报

发表于 2014-9-7 18:09 | 显示全部楼层
  1. Sub Macro1()
  2. Dim fs, wb As Object, arr, brr(1 To 10000, 1 To 4)
  3. Application.ScreenUpdating = False
  4. Set fs = CreateObject("scripting.filesystemobject")
  5. For Each m In fs.GetFolder(ThisWorkbook.Path & "").SubFolders
  6.     For Each f In fs.GetFolder(m & "").Files
  7.         Set wb = GetObject(f)
  8.         arr = wb.Sheets(1).Range("a1").CurrentRegion
  9.         wb.Close 0
  10.         y = UBound(arr)
  11.         For j = 1 To UBound(arr, 2)
  12.             If arr(1, j) = arr(y - 1, j) And arr(2, j) = arr(y, j) Then
  13.                 s = s + 1
  14.                 w = Split(m, "")
  15.                 brr(s, 1) = w(UBound(w))
  16.                 w2 = Split(f, "")
  17.                 brr(s, 2) = w2(UBound(w2))
  18.                 w3 = Split(Cells(1, j).Address, "$$")(1)
  19.                 brr(s, 3) = w3
  20.                 brr(s, 4) = arr(1, j) & "=" & arr(2, j)
  21.                 Exit For
  22.             End If
  23.         Next
  24.     Next
  25. Next
  26. Range("a1").Resize(s, 4) = brr
  27. Application.ScreenUpdating = True
  28. End Sub
复制代码
回复

使用道具 举报

发表于 2014-9-7 18:12 | 显示全部楼层    本楼为最佳答案   
………………

新建文件夹.zip

30.48 KB, 下载次数: 15

评分

参与人数 1 +1 收起 理由
晓敏 + 1 删除 Exit For后,一切正常。谢谢老师了。祝.

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2014-9-7 21:47 | 显示全部楼层
dsmch 发表于 2014-9-7 18:12
………………

老师您好,谢谢您帮助。试了一下大数据(07版),16384列的。12个工作薄,程序运行正常。但查出来的数据不完整。12个工作薄,本来有124个数据,却只查出来12个。初步看了一下,三千多列那里,能查到;而八千多列那里,就查不到了。不知为什么?因数据太大,一个工作薄在7M左右,不好上传,不知如何是好。麻烦老师看看,谢谢了。

点评

把代码中的exit fot删除试试  发表于 2014-9-7 22:59
一个工作簿有几个工作表?代码仅对第一个工作表  发表于 2014-9-7 22:43
回复

使用道具 举报

 楼主| 发表于 2014-9-7 23:14 | 显示全部楼层
dsmch 发表于 2014-9-7 18:12
………………

老师您好,一个工作薄中,只有一个工作表。因电脑在制作数据,要到1150才能结束,等下试着删除看看能否正常。谢谢老师。
回复

使用道具 举报

发表于 2014-9-10 19:31 | 显示全部楼层
学习学习
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-27 09:09 , Processed in 0.505325 second(s), 11 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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