如何从phpexcel中的单元格中删除超链接

时间:2016-05-25 04:02:17

标签: php phpexcel

我正在尝试编辑工作表并删除行,当我这样做时,带有电子邮件地址(带有mailto超链接)的单元格会保留超链接,尽管单元格值会被新单元格替换到其位置。“ p>

例如 单元格A1的电子邮件地址为abc@abc.com,单元格A2有一个空白单元格,当我使用$ sheet-> removeRow fucntion删除第1行时,该行被删除,但A1现在是一个空白单元格,其中mailto链接到abc @ abc.com

我无法使用phpexcel删除单元格上的超链接

我试过以下

  1. $cell->setHyperlink(new PHPExcel_Cell_Hyperlink(''));
  2. {{1}}
  3. 任何帮助将不胜感激

2 个答案:

答案 0 :(得分:2)

将null值传递给针对单元格的setHyperlink方法

通过查看代码,可以找到单元格附加到的工作表,如果值为null,则删除超链接

$cell->setHyperlink(null);

Worksheet.php https://github.com/PHPOffice/PHPExcel/blob/1.8/Classes/PHPExcel/Worksheet.php#L2702

Cell.php https://github.com/PHPOffice/PHPExcel/blob/1.8/Classes/PHPExcel/Cell.php#L461

答案 1 :(得分:1)

根据文档,以下代码将用于添加超链接

$objPHPExcel->getActiveSheet()->setCellValue('E26', 'www.phpexcel.net');

$objPHPExcel->getActiveSheet()->getCell('E26')->getHyperlink()->setUrl('http://www.phpexcel.net'); 相同,请尝试下面的代码

setUrl EmptyNull值。

$objPHPExcel->getActiveSheet()->setCellValue('E26', '');

$objPHPExcel->getActiveSheet()->getCell('E26')->getHyperlink()->setUrl('');