工作中有时候会碰到需要把一张大的表格(行数多)分拆成多个表格的情况,虽然不太符合常理,如果一张表格太大,数据导出的时候就应该拆好,但实际上基于各种原因还是会碰到。

python脚本,比较简单也比较好理解,就是一个筛选导出的过程

import pandas as pd
from pandas import DataFrame,Series
data=pd.read_excel("待拆分原始数据.xlsx")
long=data.count()[0]
e=int(input("分拆后每个excel表有几行"))
#data['字段']=data['字段'].astype(str) #excel表格超过15位就会变成文本形式,如果有超过18位的数字需要加上一句
n=int(long/e)+1
for i in range(n):x=data[i*e:(i+1)*e]#最后一行无法除尽也没关系x.to_excel(str(i+1)+"数据.xlsx",index=False)#这里+1也是为了命名看起来舒服点,从1开始命名

VBA脚本
写的又臭又长,也没想到好的写法,方法是先把待拆分的表格复制多份,然后分别打开表再删掉多余的行,注意第一个比较特殊。把待拆分的表和写着代码的工作表放在同一个文件夹下。

Sub 拆分全()
t1 = Timer
Workbooks.Open (ThisWorkbook.Path & "/原始.xlsx")   '不一定要
r = 1 '表头,1是比较合理的,就算不是1页可以调成1
b = 40000  '拆分后每个表格的行数
a = ActiveWorkbook.Worksheets(1).UsedRange.Rows.Count
ActiveWorkbook.Close
l = Int(a / b) + 1 'l表示需要拆分成几个文件For i = 1 To l
FileCopy ThisWorkbook.Path & "/原始.xlsx", ThisWorkbook.Path & "/" & i & ".xlsx"
Next i
Application.ScreenUpdating = False ',True屏幕会闪,这段在复制fn = ThisWorkbook.Path & "/" & 1 & ".xlsx"
Workbooks.Open (fn)
With ActiveWorkbook.Worksheets(1)Rows(r + b + 1 & ":" & 1048576).SelectSelection.Delete Shift:=xlUp
End With
ActiveWorkbook.Close savechanges:=True'1比较特殊,1只需要删后面的,不用删前面的,所以这里有点重复For i = 2 To lfn = ThisWorkbook.Path & "/" & i & ".xlsx"   Workbooks.Open (fn)With ActiveWorkbook.Worksheets(1)Rows(r + 1 & ":" & r + (i - 1) * b).SelectSelection.Delete Shift:=xlUp              Rows(r + b + 1 & ":" & 1048576).SelectSelection.Delete Shift:=xlUpEnd WithActiveWorkbook.Close savechanges:=True
Next i
Application.ScreenUpdating = Truet2 = Timer
MsgBox "程序运行共用了:" & t2 - t1 & "秒!"
End Sub

用python或者vba把一个excel表格拆分成多个excel表格相关推荐

  1. excel怎么拆分成多个独立表格文件

    今天跟大家分享一下excel怎么拆分成多个独立表格文件 1.打开演示文件,要求将表格拆分为多个独立的文件. 2.首先我们点击下图选项 3.点击[汇总拆分],选择[拆分工作表] 4.将[表头行数]设置为 ...

  2. VBA将一个表格拆分成多个新表格

    背景:业务给了一个大表格,里面几十万条数据,要拆分成成百上千个小表格,思来想去,vba做这件事是效率最高的. 样表数据源: 请按照这个表头在excel中制作样表(最好将样表放在一个空文件夹里面) 然后 ...

  3. 表格拆分的两种方式 拆分成多个excel工作表或多个excel文件

    表格拆分的两种方式 拆分成多个excel工作表或多个excel文件 拆分Excel,可以分为3种层次:拆分excel单元格:拆分成多个excel工作表:拆分成多个excel文件 其中,第1种拆分是无法 ...

  4. 产品狗的Python之路(1):按照行数将excel表格拆分成多个

    产品狗的Python之路 (1):使用python将excel表格拆分成多个 背景: 因公司内部数据导入系统限制每一次导入的数据行数,故经常需要将一个几万行的表格拆分成多个,费事费力,所以写了一个小程 ...

  5. python拆分excel的sheet为单文件_WPS 2019 多个sheet表拆分成独立的excel文件

    参考: 场景:将多个sheet表拆分成独立的excel文件 一.安装VB工具: 默认情况下:wps -- 开发工具 --- VB 编辑器是灰选状态(即不可用状态),此时需要先安装vb工具:VBA Fo ...

  6. html拆分单元格成两列,在excel中怎样把一个单元格拆分成两个单元格

    excel表格中如何拆分带括号的单元格比如说我有一个表格单元格内容是 :张三李四(000001) 如何将括号内的选中需要拆分的单元格,Ctrl +F把单元格里面的括号或者书名号换成逗号,然后在数据选项 ...

  7. Excel表格拆分成多个表格,蜂鸟转换帮您快捷拆分

    Excel表格是用来整理数据使用的,很多办公族会在表格下存储很多数据,当表格中的数据比较多时,想要将表格数据分开整理时,大家可以新建表格,将就表格中的部分数据复制到新建表格中,同时也可以将一个表格拆分 ...

  8. 怎么把一个表格拆分成两个表格

    今天跟大家分享一下怎么把一个表格拆分成两个表格 1.打开演示文件,要求将表格按照部门的不同拆分为两个. 2.首先我们点击下图选项 3.点击[汇总拆分]-[拆分工作表] 4.将[表头行数]设置为2 5. ...

  9. excel表格拆分成多个工作表的方法?

    今天跟大家分享一下excel表格拆分成多个工作表 1.打开演示文件要求将表格按照部门拆分开. 2.接着我们点击如下图选项 3.点击[汇总拆分],选择[拆分工作表] 4.将表头行数设置为1 5.最后点击 ...

最新文章

  1. Apache Kylin在绿城客户画像系统中的实践
  2. SAP HANA会代替BW吗?
  3. [luogu5008]逛庭院
  4. Python实现简易的图书借阅管理系统
  5. 微信小程序 --- 物流快递查询
  6. 计算机文化基础—病毒
  7. Redis面试宝典12道法
  8. c++14:std::quoted
  9. mac上Python版本不同时,给指定的版本安装库
  10. Navicat Premium 简介、安装、使用
  11. 搞笑决战水源之巅收藏六 师傅
  12. css 平移到某个位置_平移:translate() - CSS3 | 绿叶学习网
  13. 怎么下载网页上的视频
  14. 你人生中的那口井挖了没有?(转潇湘隐者)
  15. 【Word】docx转doc后公式转换为图片不清晰/模糊
  16. 使用SBP后,如何查询Bundle的依赖关系
  17. 东莞惠州楼盘又来深抢客 推盘量居历史高位 2012.5.12
  18. 千锋Android游戏开发基础视频教程-cocos2dMars版
  19. 区块链开发入门:基于以太坊智能合约构建 ICO DApp
  20. 全网通手机插两张电信卡会怎么样

热门文章

  1. 在SQL Server 2008上遇到了删除作业失败的问题。 547错误
  2. 2D动画设计制作软件:Cartoon Animator 中文版win/mac版
  3. 红颜弹指老,刹那芳华(转载 作者:程灵素)
  4. 【安卓学习之常见问题】百度地图卫星地图精度不够
  5. 解决mac登录APPLE ID无限重复弹窗提示登录
  6. 基于JAVA社区养老服务管理系统计算机毕业设计源码+系统+mysql数据库+lw文档+部署
  7. 黑马程序员学习笔记-------c++提高编程
  8. 跳动爱心代码-李峋爱心代码(手把手教学)
  9. python 报错in module,Centos 7 python 编译报错 ImportError: No module named six 解决办法
  10. Linux下core文件介绍与使用方法