phpexcel中PHPExcel_Exception Invalid cell coordinate [1解决办法
来源:互联网 发布:淘宝转化率一般是多少 编辑:程序博客网 时间:2024/06/07 17:38
1、当导出的首行字段超过26的字符的时候,就会报出错误,错误信息如下:
PHPExcel_Exception Invalid cell coordinate [1
原因:
这个不是条数多了出问题,而是列超过26列出的问题。
仔细看看excel表格,z后面是AA、AB、AC,因此输出的时候需要判断。
解决办法:
public function actionExcel(){ /** Include PHPExcel */ require_once dirname(dirname(__FILE__)) . '/components/PHPExcel.php'; $objPHPExcel = new PHPExcel(); $excel_data = self::getExcelData(); $objPHPExcel->getProperties()->setCreator("suv3") ->setLastModifiedBy("suv3") ->setTitle("suv3") ->setSubject("suv3") ->setDescription("suv3") ->setKeywords("suv3") ->setCategory("suv3"); //表头 $first_row_name = ['日期', '渠道', '新增账号', 'D1累计', 'D1LTV', 'D2累计', 'D2LTV', 'D3累计', 'D3LTV', 'D4累计', 'D4LTV', 'D5累计', 'D5LTV', 'D6累计', 'D6LTV', 'D7累计', 'D7LTV', 'D15累计', 'D15LTV', 'D30累计', 'D30LTV', 'D45累计', 'D45LTV', 'D60累计', 'D60LTV', 'D75累计', 'D75LTV', 'D90累计', 'D90LTV']; $ordA = ord('A'); //65 $key2 = ord("@"); //64 $objPHPExcel->setActiveSheetIndex(0); //表示使用的是第一个sheet foreach ($first_row_name as $key => $val) { if($ordA > ord("Z")) { $colum = chr(ord("A")).chr(++$key2);//超过26个字母 AA1,AB1,AC1,AD1...BA1,BB1... } else { $colum = chr($ordA++); } $objPHPExcel->getActiveSheet()->SetCellValue($colum.'1', $val); } $index_row = 2; //从第二行开始插入数据 $ii = 0; foreach ($excel_data as $kk => $rows) { $ordA = ord('A');//重新从A开始 $key2 = ord("@"); //64 foreach($rows as $key => $val) { if($ordA > ord("Z")) { $colum = chr(ord("A")).chr(++$key2);//超过26个字母 AA1,AB1,AC1,AD1...BA1,BB1... } else { $colum = chr($ordA++); } $objPHPExcel->getActiveSheet()->setCellValue($colum.$index_row, $val); } $index_row++; } $pro_name = Product::find()->select(['product_name'])->andWhere(['product_id' => \Yii::$app->request->get('pro_id')])->asArray()->one()['product_name']; $excel_name = $pro_name . '-付费分析'; header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'); header('Content-Disposition: attachment;filename="' . $excel_name . '.xlsx"'); header('Cache-Control: max-age=0'); header('Cache-Control: max-age=1');// If you're serving to IE 9, then the following may be needed header ('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); // Date in the past header ('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); // always modified header ('Cache-Control: cache, must-revalidate'); // HTTP/1.1 header ('Pragma: public'); // HTTP/1.0 $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); $objWriter->save('php://output');//文件通过浏览器下载 exit;}
阅读全文
1 0
- phpexcel中PHPExcel_Exception Invalid cell coordinate [1解决办法
- PHPExcel Invalid cell coordinate 3
- PHPExcel导出数据时字段超过26列出错Invalid cell coordinate [1
- PHPExcel Invalid cell coordinate(无效单元格坐标)解决方案
- phpexcel 导出列超过26个字母Invalid cell coordinate 解决方案
- 关于Cell报表中#Error的解决办法
- Yii中的PHPExcel解决办法
- NGUI中使用UIGrid时出现cell重叠解决办法
- cell中嵌套cell
- JAVA中发生了ORA-00911: invalid character的解决办法
- VC命令行编译中出现Invalid switch错误的解决办法
- yii中使用phpexcel
- thinkphp中PHPExcel用法
- cell 重用解决办法
- cell复用解决办法
- Invalid command 'RewriteEngine' 解决办法
- Invalid command 'RewriteEngine'解决办法
- Invalid command \'RewriteEngine\' 解决办法
- 软件测试之我所见(五)
- 内存泄露:分析及工具使用
- eclipse如何配置java环境和tomcat环境
- matrix.setScale,postScale,preScale
- 使用Maven编译项目遇到——“maven编码gbk的不可映射字符”解决办法
- phpexcel中PHPExcel_Exception Invalid cell coordinate [1解决办法
- matlab描点连线及坐标轴里外颜色改变
- 内存对齐
- 洛谷2709 小B的询问(莫队)
- 命令行方式进行teamviewer安装与服务启动
- win10安装VC++6.0
- 查看Linux的硬件配置
- IRP和IO_STACK_LOCATION
- 常用的js正则表达式大全