【问题标题】:PHPExcel mergeCells() causing unreadable contentPHPExcel mergeCells() 导致不可读的内容
【发布时间】:2012-10-22 18:53:33
【问题描述】:

过去几天我一直在使用 PHPExcel,到目前为止,它非常适合我的需要。但是,今天我一直在尝试将 mergeCells 用于“colspan”功能,但是当我这样做时会导致无法读取的内容错误,并且 MS Excel 会提示我修复文件。

我使用的代码是:

$first = PHPExcel_Cell::stringFromColumnIndex($xCount).$yCount;    
$second = PHPExcel_Cell::stringFromColumnIndex( $xCount + 2).$yCount;
$cell_merge = $first.":".$second;   
$this->excelDoc->getActiveSheet()->mergeCells( $cell_merge );

我已经输出了$first, $second$cell_merge 的结果,以确保我以正确的方式进行操作并且内容正确。此外,当我尝试对单元格进行静态合并时(通过输入 mergeCells('A1:C1'); 它可以完美运行。

尝试写入合并的单元格会导致问题吗?

编辑:请注意:我还尝试将变量转换为字符串,以防万一:

$this->excelDoc->getActiveSheet()->mergeCells( (string)$cell_merge );

...但没有运气。

【问题讨论】:

  • 当您尝试在 MS Excel 中打开 PHPExcel 生成的文件时遇到“不可读的内容错误”时,请尝试在文本编辑器中打开该文件并在以下位置查找任何 PHP 或 PHPExcel 错误消息文件顶部
  • 感谢您的提示 :) 当我这样做时,一切都只是混乱的字符。我无法从文件中挑选错误。我应该去哪里看?
  • 如果有错误,通常会在文件的开头或结尾,并且在纯文本中很明显
  • 哦,那样的话就不行了;除了一些文件路径之外,文件中没有纯文本,例如:xl/_rels/workbook.xml.rels-

标签: php phpexcel


【解决方案1】:

仅供日后参考。这里的问题存在于键盘和椅子之间。

我试图在循环期间更改 colspan,在此循环中,我使用“A0:C0”调用了 mergeCells。

当传递“0”行时,我没有收到任何错误,只是一张糟糕的 Excel 表格。需要牢记的一点。

【讨论】:

  • 感谢您让我知道...这意味着我不需要再花时间寻找合并方法中的错误
  • 没问题。感谢您的提示:)
猜你喜欢
  • 2013-10-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多