txt导入Excel超出最大行如何自动分表:现有2000W条记录的txt,xls最大65536行,xlsx最大104W行。
发布网友
发布时间:2022-04-26 15:43
我来回答
共2个回答
热心网友
时间:2023-10-12 13:50
这个问题比较有趣。提问者知道excel的极限所在,依然一往无前地要将txt导入excel。可否想过,excel在如此大量的数据面前,即使能成功导入,也会打开很慢甚至打开死机?我试过2千条记录导入excel后,打开要5分钟,1w条记录就假死机了。这样的大量数据复制过来,excel只能作为数据存储载体,无法打开查阅或者使用的。
我的建议:不要导入到excel里面,而是导入到数据库里面。
一般电脑装有office,可以拿出来的数据库工具,可以选择office组建之一access。(添加组建的安装过程不叙述了)
txt导入到access有向导可以实现(菜单外部数据→文本文件),这里不叙述了。
而且aceess可以打开2000w的表,只要导入的数据(txt文件大小)不要超过1G就可以了。可以打开这个表,可以修改数据,不会假死,与excel操作差不多。
如果楼主还是希望将txt导出到excel,这里给个方法,需要调用点sql语句,但不使用vba(减少程序调试时间):
1、新建一个access文件,用向导将txt导入到access,注意设置自动编号为表的主键,字段名为“ID”。导出后保存表名称为“表1”。
2、按照每个excel文件100w条记录来导出,每超过100w条导出到新的excel表的思路来导出。在access建立一个查询,进入sql视图,粘贴代码: select top 1000000 * from 表1
保存该查询为“查询1”,关闭后。在access左边导航处右键“查询1”导出到excel。后面你懂的。
3、进入“查询1”sql视图,修改代码为 select top 1000000 * from 表1 where id not in (select top 1000000 id from 表1 )。然后导出100w+1到200w的数据。
4、进入“查询1”sql视图,修改代码为 select top 1000000 * from 表1 where id not in (select top 2000000 id from 表1 )。然后导出200w+1到300w的数据。如此类推,一共手工导出20次。
也许你会问,为何不用excel的vba工具,调用ado控件直接打开txt导入数据到excel。我建议是,用ado方法,其实也是建立一个虚拟数据库,但导入数据的过程全部是代码,不直接,调试很花时间(而且容易假死)。手工20次,效率实在高多了。大道至简,选择合适自己的工具和方法。
热心网友
时间:2023-10-12 13:51
这个问题我查了一个小小时的方略没有找到解决的答案,突然记起文件导入结束时有一个提示:在文本导入向导中进行操作(EXCEL2007)。然后终于发现,导入向导一开始的界面有一个“导入起始行”。如果你的数据文件像我的一样规律是以行存储的,那么恭喜,你只要将上次导入的结束行作为下一次导入的起始行则可。
txt导入Excel超出最大行如何自动分表:现有2000W条记录的txt,xls最大...
1、新建一个access文件,用向导将txt导入到access,注意设置自动编号为表的主键,字段名为“ID”。导出后保存表名称为“表1”。2、按照每个excel文件100w条记录来导出,每超过100w条导出到新的excel表的思路来导出。在access建立一个查询,进入sql视图,粘贴代码: select top 1000000 * from 表1 保存...
EXCEL中如何快速将总表数据拆分到不同分表保存并实现新增记录?
一、数据透视表的方法:插入数据透视表,选择在新的工作表中插入。把客户名拖筛选字段区域,其他需要的数据拖到透视表的中行、列、或值汇总区域即可。有新的数据时只要刷新一下即可。复制工作表,在新的工作表中,只需要筛选其他客户,就得到该客户的数据。二、Power Qurey的方法:将数据导入到Power Qur...
java将数据导出excel计算其文件大小
java导出excel超出65533行业务背景: 列表导出,数据导出超过65533行 解决方案: 1、超出65533行,直接系统提示:本系统支持导出的最大条数为65533行 2、导出模版改为.xlsx,POI导出时用XSSFWorkbook,把所有数据都拿到内存里,可以导出超过65533行,但是上线之后,发现会内存溢出 3、导出模版改为.xlsx,POI导出时用SXSSFWorkbook...