我知道這不是問這個具體模糊問題的正確位置,但也許有人知道這個庫足以啓發我。這是事情:由PHPExcel編寫的行無法從其他庫中讀取
我正在使用PHPExcel寫一個Excel5在現有的Excel文件上。我需要將該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上手動編寫的其他文件。
我可以嘗試的任何線索,想法或建議將不勝感激。
什麼PHPExcel ?: PHPExcel 1.7.3c生產的版本 - 是否有數據包含UTF-8字符?:是啊,他們來UTF-8從數據庫編碼,它們被插入在Excel中不變。 - 模板工作表中是否有任何公式?:完全不是,它是帶有某種顏色的基本標題,就是這樣。只是純文本。 – 2010-06-29 23:34:36