PHPExcel编写的行无法从其他库中读取

时间:2010-06-29 16:50:30

标签: php phpexcel

我知道这不是问这个特定模糊问题的合适地方,但是也许有人知道这个图书馆足以启发我。事情就是这样:

我正在使用PHPExcel在现有Excel文件上编写Excel5。我需要将Excel上传到Zoom网站,这样它就可以为我提供一个跟踪号码列表。但是,由于某种原因,他们用来读取上传的Excel文件的库无法读取PHPExcel编写的行,到目前为止我发现的唯一解决方案是使用MS Excel手动将动态生成的Excel的内容复制到另一个文档2007。

换句话说,Zoom网站可以读取Excel本地编写的行,但不能读取PHPExcel编写的行。我的文件只有一张表,我可以用Excel 2007打开它没问题。

即使我手动将一些行添加到模板中,然后使用PHPExcel添加更多行,Zoom也会读取由我手动编写的行,但不会读取PHPExcel写入的行。

我正是这样做的:

// Starting with the PHPExcel library
$this->load->library('PHPExcel');
$this->load->library('PHPExcel/IOFactory');
$template_file = 'zoom_tracking_template.xls';
$i = 3;

$objReader = IOFactory::createReader('Excel5');
$objPHPExcel = $objReader->load($template_file);
$objPHPExcel->setActiveSheetIndex(0);

// Fetching ML payments
foreach($payments as $row)
{
 $objPHPExcel->getActiveSheet()->setCellValue('A'.$i, 'VANESSA NEISZER');
 $objPHPExcel->getActiveSheet()->setCellValue('B'.$i, '02127616116');
 $objPHPExcel->getActiveSheet()->setCellValue('C'.$i, '1ER PISO MINITIENDAS 199 BLVD SABANA GRANDE, CRUCE C / CALLE NEGRIN');
 $objPHPExcel->getActiveSheet()->setCellValue('D'.$i, $row->mailing_city);
 $objPHPExcel->getActiveSheet()->setCellValue('E'.$i, $row->mailing_name);
 $objPHPExcel->getActiveSheet()->setCellValue('F'.$i, $row->mailing_name);
 $objPHPExcel->getActiveSheet()->setCellValue('G'.$i, $row->mailing_personal_id);
 $objPHPExcel->getActiveSheet()->setCellValue('H'.$i, $row->mailing_phone);
 $objPHPExcel->getActiveSheet()->setCellValue('I'.$i, $row->mailing_address1.' '.$row->mailing_address2);
 $objPHPExcel->getActiveSheet()->setCellValue('J'.$i, $row->nickname);
 $objPHPExcel->getActiveSheet()->setCellValue('K'.$i, '1');
 $objPHPExcel->getActiveSheet()->setCellValue('L'.$i, '0.3');
 $objPHPExcel->getActiveSheet()->setCellValue('M'.$i, 'M');
 $objPHPExcel->getActiveSheet()->setCellValue('N'.$i, 'PRODUCTO');
 $objPHPExcel->getActiveSheet()->setCellValue('O'.$i, '0');

 $i++;
}


$objPHPExcel->setActiveSheetIndex(0);

$objWriter = IOFactory::createWriter($objPHPExcel, 'Excel5');

// Sending headers to force the user to download the file
header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="Envios'.date('dMy').'.xls"');
header('Cache-Control: max-age=0');

$objWriter->save('php://output');

我不清楚他们用什么PHP库来阅读Excel文件,我相信如果我问他们,他们不会告诉我。我知道他们使用PHP,他们的库只读取Excel 2003文件,但是,我不知道为什么他们无法读取我的文件,但他们可以读取在MS Excel上手动编写的其他文件。

我可以尝试任何可以尝试的线索,想法或建议。

1 个答案:

答案 0 :(得分:2)

PHPExcel的主要开发人员正在寻找这个问题(以及其他问题),在尝试寻找新的一天工作和生活之间的某个地方。我不熟悉缩放网站或他们使用的软件。 PHPExcel BIFF8文件可以通过Excel,OOCalc和Gnumeric读取而不会出现错误......但有几个问题浮现在脑海中。

  • 什么版本的PHPExcel?
  • 是否有任何数据包含UTF-8字符?
  • 模板工作表中是否有公式?
  • 如果是这样,他们是什么?