Excel精英培训网

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

[已解决]请教如何在多个工作表中求同一单元格最大值

[复制链接]
发表于 2016-3-16 15:17 | 显示全部楼层 |阅读模式
本帖最后由 飞燕草 于 2016-3-16 16:29 编辑

请教各位老师,如何在多个工作表中求同一单元格最大值并提取所在工作表的名称?
工作表名称不规律,表样在附件,谢谢!
最佳答案
2016-3-16 15:40
  1. Sub tt()
  2.     On Error Resume Next
  3.     Dim wb As Workbook, sh As Worksheet
  4.     Workbooks.Open ThisWorkbook.Path & "\明细表.xlsx"
  5.     Set wb = Workbooks("明细表.xlsx")
  6.     For Each sh In wb.Worksheets
  7.         If imax < sh.[a4] Then imax = sh.[a4]: xstr = sh.Name
  8.     Next
  9.     wb.Close False
  10.     [b4] = xstr: [b5] = imax
  11. End Sub
复制代码

多个工作表中求同一单元格最大值.rar

13.07 KB, 下载次数: 4

发表于 2016-3-16 15:40 | 显示全部楼层    本楼为最佳答案   
  1. Sub tt()
  2.     On Error Resume Next
  3.     Dim wb As Workbook, sh As Worksheet
  4.     Workbooks.Open ThisWorkbook.Path & "\明细表.xlsx"
  5.     Set wb = Workbooks("明细表.xlsx")
  6.     For Each sh In wb.Worksheets
  7.         If imax < sh.[a4] Then imax = sh.[a4]: xstr = sh.Name
  8.     Next
  9.     wb.Close False
  10.     [b4] = xstr: [b5] = imax
  11. End Sub
复制代码

多个工作表中求同一单元格最大值.rar

21.38 KB, 下载次数: 3

回复

使用道具 举报

 楼主| 发表于 2016-3-16 16:17 | 显示全部楼层
grf1973 发表于 2016-3-16 15:40

好强大!谢谢!能否再次请教下,如果需要求得前五个最大值及工作表名称,怎么修改代码呢?谢谢~
回复

使用道具 举报

发表于 2016-3-16 16:21 | 显示全部楼层
把所有工作表名和数据放在一个数组里,全部显示后排序,取前五。
回复

使用道具 举报

发表于 2016-3-16 16:27 | 显示全部楼层
  1. Sub tt()
  2.     On Error Resume Next
  3.     Dim wb As Workbook, sh As Worksheet
  4.     Workbooks.Open ThisWorkbook.Path & "\明细表.xlsx"
  5.     Set wb = Workbooks("明细表.xlsx")
  6.     ReDim arr(1 To wb.Worksheets.Count, 1 To 2)
  7.     For Each sh In wb.Worksheets
  8.         n = n + 1
  9.         arr(n, 1) = sh.Name
  10.         arr(n, 2) = sh.[a4]
  11.     Next
  12.     wb.Close False
  13.     [a5].Resize(n, 2) = arr
  14.     [a5].Resize(n, 2).Sort key1:=[b5], order1:=xlDescending
  15. End Sub
复制代码

多个工作表中求同一单元格最大值.rar

21.84 KB, 下载次数: 4

评分

参与人数 1 +12 收起 理由
悠悠05 + 12 赞一个

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2016-3-16 16:27 | 显示全部楼层
grf1973 发表于 2016-3-16 16:21
把所有工作表名和数据放在一个数组里,全部显示后排序,取前五。

以附件为例,具体该怎么弄呀?刚刚接触,不太会~谢谢
回复

使用道具 举报

 楼主| 发表于 2016-3-16 16:29 | 显示全部楼层
看到了,谢谢帮助~~ 得好好学习一下
回复

使用道具 举报

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

本版积分规则

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

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

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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