如何使用PHPExcel从合并单元格中获取值?

时间:2017-09-20 07:28:19

标签: php phpexcel

在这里,我正在阅读一份excel表,可能有也可能没有合并的单元格。好好循环当前工作表中的单元格,如果我遇到合并单元格,那么我应该能够找到它的范围和值。

以下是步骤: -

 1.读取单元格A1或B1或B7或A9  2.检查它是否与任何其他单元合并  3.如果合并单元格,则获取合并范围,例如:A1到A7或A1到D1
 最后得到范围后得到了值。

1 个答案:

答案 0 :(得分:3)

对于任何给定的单元格对象,有许多辅助方法可用

$cell->isInMergeRange()

将返回一个布尔值,一个true / false值,指示一个单元格是否是合并范围的一部分

$cell->getMergeRange()

将返回单元格所在的合并范围(例如" A1:C3"),如果它不是合并范围的一部分,则返回布尔值

$cell->isMergeRangeValueCell()

将返回一个布尔值true / false,指示此单元格是否是合并范围(保存实际数据值)范围(左上角单元格)中的主单元格

此外,工作表对象有一个方法

$worksheet->getMergeCells()

将返回一个列出工作表中所有合并范围的数组

最后,调用静态方法

PHPExcel_Cell::splitRange($mergeRange);

传入一个范围值,例如' A1:C3',将返回一个包含两个元素的数组;第一个是范围中左上角单元格的地址(保存实际数据值),第二个是右下角单元格地址," end"范围