我正在尝试编辑工作表并删除行,当我这样做时,带有电子邮件地址(带有mailto超链接)的单元格会保留超链接,尽管单元格值会被新单元格替换到其位置。“ p>
例如 单元格A1的电子邮件地址为abc@abc.com,单元格A2有一个空白单元格,当我使用$ sheet-> removeRow fucntion删除第1行时,该行被删除,但A1现在是一个空白单元格,其中mailto链接到abc @ abc.com
我无法使用phpexcel删除单元格上的超链接
我试过以下
$cell->setHyperlink(new PHPExcel_Cell_Hyperlink(''));
任何帮助将不胜感激
答案 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
Empty
或Null
值。
$objPHPExcel->getActiveSheet()->setCellValue('E26', '');
$objPHPExcel->getActiveSheet()->getCell('E26')->getHyperlink()->setUrl('');