【发布时间】:2019-05-07 01:28:48
【问题描述】:
我正在开发一个使用 PHP(以 CodeIgniter 作为框架)制作的 Web 应用程序,它应该生成一个 Excel 文件报告作为数据摘要。
我正在使用PHPSpreadsheet作为库来生成.xlsx文件,一切都成功了。
我能够在特定范围的单元格中显示列的前 5 个值,即。 文章数量最多的前 5 个出版物。
使用代码 =LARGE(ColumnOfTheDataRange , NumeralValue) -- 我能够获得我想要的前 5 名
然后,在这前 5 个数据的左侧,我需要显示匹配的 Publication Names / Publications。我可以使用函数=INDEX(PublicationNamesCellRange, MATCH(CellOfTheMatchingData, ColumnOfTheDataCellRange, 0))
现在,请注意前 5 个数据列(右)中有多个文章计数 54,它们应该属于 2 个不同的出版物。问题是,我应该使用什么代码或技术来生成唯一的出版物名称,这样它就不会重复出版物名称 E,因为在原始 excel 文件中,出版物名称 E是第一个有54匹配数据的?
【问题讨论】:
-
这里有几个帖子显示了解决方案 - 我利用了它们,所以搜索一下。即使您没有找到它们,您也可以查看 large() 和 aggregate() 但 aggregate() 取决于 excel 版本。
-
你好先生@SolarMike,美好的一天!在发布此之前,我确保没有可用的解决方案,因为过去 3 天我一直在寻找一个。如果有,请给我链接好吗?或将此帖子标记为重复?至于您关于
aggregate()功能的提示,正在寻找它,非常感谢您的想法! -
我很惊讶你没有找到相关的帖子,因为我明确表示这就是我找到解决方案的方式......
-
为什么不直接使用数据透视表?
-
你好@MichalRosa 美好的一天!制作我连接它们的那两个数据透视表?
标签: php excel codeigniter phpspreadsheet