当前位置:首页教育技巧excel技巧excel表格单元

Excel公式获取多个工作表单元格区域的数据组成的数组

2025-01-25 09:33:17


使用一个公式返回一个数组,该数组包含多个工作表中给定范围内的所有数据。如下图1至图5所示有5个工作表:

图1

图2

图3

图4

图5

如果使用上述示例工作表,则公式返回的结果类似于:

{18,””,19,63,””,””,67;””,46,””,””,”L”,””,7;”N”,”Z”,””,”F”,70,19,””;””,””,””,””,””,””,73;””,””,”T”,””,””,88,”Y”;”U”,””,”B”,”F”,”Q”,71,””;””,”H”,”U”,”R”,86,84,”Q”;11,”R”,84,””,””,43,72;39,53,””,””,”R”,60,80;””,”V”,”B”,33,””,46,39;””,”B”,””,””,”V”,””,””;”P”,””,”M”,””,””,””,85;”O”,””,9,””,””,””,””;””,”I”,9,””,”S”,”S”,59;””,”X”,”J”,””,””,””,”X”;46,72,””,22,””,67,”P”;35,32,69,”O”,””,””,”V”;24,””,””,””,”R”,””,””;””,5,”B”,69,”C”,””,””;”P”,”A”,19,””,””,”K”,”B”}

为了保持一致,在任何公式中,指定的单元格区域(示例中为A1:G4)定义为名称Rng。同样,对于引用工作表集合的任何引用,例如:={“Sheet1″,”Sheet2″,”Sheet3″,”Sheet4″,”Sheet5”},定义为名称Sheets。

先不看答案,自已动手试一试。

公式

可使用公式生成中间结果:

=CELL(“contents”,INDIRECT(T(INDEX(Sheets&”!R”&MOD(ROW(INDIRECT(“A1:A”&ROWS(Rng_2)*COLUMNS(Rng_2)))-1,ROWS(Rng_2))+1&”C”&INT((ROW(INDIRECT(“A1:A”&ROWS(Rng_2)*COLUMNS(Rng_2)))-1)/ROWS(Rng_2))+1,)),))

小结

这个案例值得好好研究一下,在公式中应用了一些数学计算来获取结果。在原文的评论中,还有不少公式,有时间可以逐个调试,增强对公式的理解。

相关信息


电脑版

【免责声明】本站信息来自网友投稿及网络整理,内容仅供参考,如果有错误请反馈给我们及时更正,对文中内容的真实性和完整性本站不提供任何保证,不承但任何责任。
版权所有:学窍知识网 Copyright © 2011-2025 www.at317.com All Rights Reserved .