导出数据超出EXCEL行列本身限制时如何解决!!!
EXCEL本身的限制是256列x65,536行假如我用EXCEL(TEXTTOCOLUMN功能,中文应该是分列功能)把TEXT文本根据逗号分切成很多列,但是这个超出了25...
EXCEL 本身的限制是 256 列 x 65,536 行
假如我用EXCEL (TEXT TO COLUMN功能,中文应该是分列功能)把TEXT文本根据逗号分切成很多列,但是这个超出了256列,怎么办?
又或者我从某个报表系统导出数据超出了65536行,又怎么办?
无论从实用角度,或者从理论研究角度,都迫切希望能找到答案,所以……
大虾们,HELP 展开
假如我用EXCEL (TEXT TO COLUMN功能,中文应该是分列功能)把TEXT文本根据逗号分切成很多列,但是这个超出了256列,怎么办?
又或者我从某个报表系统导出数据超出了65536行,又怎么办?
无论从实用角度,或者从理论研究角度,都迫切希望能找到答案,所以……
大虾们,HELP 展开
展开全部
1、//导入PHPExcel类库,因为PHPExcel没有用命名空间,只能inport导入
import("Org.Util.PHPExcel");
import("Org.Util.PHPExcel.Writer.Excel5");
import("Org.Util.PHPExcel.IOFactory.php");
$date = date("Y_m_d",time());
$fileName .= "_{$date}.xls";
2、 //创建PHPExcel对象,注意,不能少了\
$objPHPExcel = new \PHPExcel();
$objProps = $objPHPExcel->getProperties();
3、//设置表头
$key = 0;
4、 //print_r($headArr);exit;
foreach($headArr as $v){
5、//注意,不能少了。将列数字转换为字母\
$colum = \PHPExcel_Cell::stringFromColumnIndex($key);
$objPHPExcel->setActiveSheetIndex(0) ->setCellValue($colum.'1', $v);
$key += 1; }
$column = 2;
$objActSheet = $objPHPExcel->getActiveSheet();
foreach($data as $key => $rows){ //行写入 $span = 0;
foreach($rows as $keyName=>$value){// 列写入
$j = \PHPExcel_Cell::stringFromColumnIndex($span);
$objActSheet->setCellValue($j.$column, $value);
$span++; }
$column++; }
$fileName = iconv("utf-8", "gb2312", $fileName);
7、//重命名表
$objPHPExcel->getActiveSheet()->setTitle($date);
8、//设置字体大小
$objPHPExcel->getDefaultStyle()->getFont()->setSize(14);
9、 //设置单元格宽度
$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(15);
10、 //设置默认行高
$objPHPExcel->getActiveSheet()->getDefaultRowDimension()->setRowHeight(23);
11、//设置活动单指数到第一个表,所以Excel打开这是第一个表
$objPHPExcel->setActiveSheetIndex(0);
header('Content-Type: application/vnd.ms-excel');
header("Content-Disposition: attachment;filename=\"$fileName\"");
header('Cache-Control: max-age=0');
$objWriter = \PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
$objWriter->save('php://output'); //文件通过浏览器下载exit;}
import("Org.Util.PHPExcel");
import("Org.Util.PHPExcel.Writer.Excel5");
import("Org.Util.PHPExcel.IOFactory.php");
$date = date("Y_m_d",time());
$fileName .= "_{$date}.xls";
2、 //创建PHPExcel对象,注意,不能少了\
$objPHPExcel = new \PHPExcel();
$objProps = $objPHPExcel->getProperties();
3、//设置表头
$key = 0;
4、 //print_r($headArr);exit;
foreach($headArr as $v){
5、//注意,不能少了。将列数字转换为字母\
$colum = \PHPExcel_Cell::stringFromColumnIndex($key);
$objPHPExcel->setActiveSheetIndex(0) ->setCellValue($colum.'1', $v);
$key += 1; }
$column = 2;
$objActSheet = $objPHPExcel->getActiveSheet();
foreach($data as $key => $rows){ //行写入 $span = 0;
foreach($rows as $keyName=>$value){// 列写入
$j = \PHPExcel_Cell::stringFromColumnIndex($span);
$objActSheet->setCellValue($j.$column, $value);
$span++; }
$column++; }
$fileName = iconv("utf-8", "gb2312", $fileName);
7、//重命名表
$objPHPExcel->getActiveSheet()->setTitle($date);
8、//设置字体大小
$objPHPExcel->getDefaultStyle()->getFont()->setSize(14);
9、 //设置单元格宽度
$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(15);
10、 //设置默认行高
$objPHPExcel->getActiveSheet()->getDefaultRowDimension()->setRowHeight(23);
11、//设置活动单指数到第一个表,所以Excel打开这是第一个表
$objPHPExcel->setActiveSheetIndex(0);
header('Content-Type: application/vnd.ms-excel');
header("Content-Disposition: attachment;filename=\"$fileName\"");
header('Cache-Control: max-age=0');
$objWriter = \PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
$objWriter->save('php://output'); //文件通过浏览器下载exit;}
2016-02-25 · 知道合伙人软件行家
关注
展开全部
数据库条数不是按M数来算的1700M跟10M不能说明你的数据条数EXCEL装不了。
数据库之前的关系,每个表的大小,条数都影响数据库的大小。
你可以试着检查数据库各个表的条数
小于1048576就导到2007。大于的话你可以导到N个SHEET中即可。
数据库之前的关系,每个表的大小,条数都影响数据库的大小。
你可以试着检查数据库各个表的条数
小于1048576就导到2007。大于的话你可以导到N个SHEET中即可。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Excel2007或更新版本创建的.xlsx格式文档,每个工作表可以支持16384列*1048576行
估计你用的是Excel2003。
所以,安装新版本的OFFICE即可。
估计你用的是Excel2003。
所以,安装新版本的OFFICE即可。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2015-05-11
展开全部
您好,希望以下回答能帮助您
使用ACCESS存储原始数据,在EXCEL中通过透视图表来进行数据统计分析。
如您还有疑问可继续追问。
使用ACCESS存储原始数据,在EXCEL中通过透视图表来进行数据统计分析。
如您还有疑问可继续追问。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2015-05-11
展开全部
数据在sheet1放不了可以放在sheet2
追问
TXT转换过来的,如果拆分到sheet2
追答
还是换个新版的office吧!一步到位,方便快捷!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询