肥宅钓鱼网
当前位置: 首页 钓鱼百科

excel拆分工作表代码如何写(有比这更快的Excel工作表拆分法吗)

时间:2023-07-19 作者: 小编 阅读量: 1 栏目名: 钓鱼百科

位置选择现有工作表,单击确定。选择“数据透视表工具”下方“设计”选项卡里的“报表布局”下拉菜单的“以表格形式显示”。为了方便后续处理,把数据透视表修改成普通表格。这样就能批量对所有工作表进行统一操作。全选复制粘贴为值。删除前两行,再把日期这列列宽调整一下就完成了。

作者:夏雪 转自:excel教程

各位小伙伴有没有遇到过这样的问题:当我们把所有的信息汇总在一张表里后,又需要将这张大表按某一条件再拆分成多个工作表。那怎么才能实现呢?可能最笨的方法就是在原工作表筛选数据然后复制粘贴到新工作表,不过这种方法不适合数据多的案例,并且新工作表也需要一一重命名,显得繁琐。今天就给大家介绍两种快捷实用的工作表拆分方法。
如图,现在要把这个工作表的内容按城市拆分成多个工作表。


第1种:

极速拆分——VBA(文中提供有代码)

VBA是EXCEL处理大量重复工作最好用的工具。不过很多人对VBA一窍不通,所以今天给大家分享一段代码,并且详细解释了如何根据实际表格修改代码值,方便大家在工作中使用。

(1)按住Alt F11打开VBA编辑器,点击“插入”菜单下的“模块”。

(2)在右侧代码窗口输入下列代码。

Sub 拆分表()

Dim i, iRow, iCol, t, iNum As Integer, sh As Worksheet, str As String

Application.ScreenUpdating = False

With Worksheets("Sheet1")

iRow = .Range("A65535").End(xlUp).Row

iCol = .Range("IV1").End(xlToLeft).Column

t = 3

For i = 2 To iRow

str = .Cells(i, t).Value

On Error Resume Next

Set sh = Worksheets(str)

If Err.Number <> 0 Then

Set sh = Worksheets.Add(, Worksheets(Worksheets.Count))

sh.Name = str

End If


sh.Range("A1").Resize(1, iCol).Value = .Range("A1").Resize(1, iCol).Value

iNum = sh.Range("A" & Rows.Count).End(xlUp).Row

sh.Range("A" & iNum1).Resize(1, iCol).Value = .Range("A" & i).Resize(1, iCol).Value

Next i

End With

Application.ScreenUpdating = True

End Sub



代码解析:

这里用红色文字表示需要根据实际修改的代码参数;'用于表示注释,其后的文字并不影响代码的运行,只是用于说明代码的。这里特意用灰色表示注释文字。

Sub 拆分表 '文件名称,根据自己的文件名修改

Dim i, iRow, iCol, t, iNum As Integer, sh As Worksheet, str As String

Application.ScreenUpdating = False '关闭屏幕刷新

With Worksheets("Sheet1") '双引号内是工作簿名称,根据实际工作簿名称修改

iRow = .Range("A65535").End(xlUp).Row '从A列的最后一行开始向上获取工作表的行数,一般只改动Range中的列参数,如要工作表有效区域是从B列开始的,值就是B65535

iCol = .Range("IV1").End(xlToLeft).Column '从最后列(IV)第1行开始向左获取工作表的列数,一般只改动Range中的行参数,如要工作表有效区域是从第2行开始的,值就是IV2

t = 3 't为列数,设置依据哪一列进行拆分,譬如,如果是按E列拆分,这里就是t=5

For i = 2 To iRow 'i为行数,设置从第几行开始获取拆分值,要根据工作表实际改动

str = .Cells(i, t).Value '获取单元格(i, t)的值作为拆分后的表格名称

On Error Resume Next

Set sh = Worksheets(str) '创建以上述获取值为名的工作表

If Err.Number <> 0 Then '如果不存在这个工作表则添加一个并命名

Set sh = Worksheets.Add(, Worksheets(Worksheets.Count))

sh.Name = str

End If '如果存在这个工作表

sh.Range("A1").Resize(1, iCol).Value = .Range("A1").Resize(1, iCol).Value '获取工作表标题,一般只改动Range的列值和Resize中的行值,譬如工作表的标题是从B列第3行开始的,则这句代码就变成 sh.Range("B1").Resize(3, iCol).Value = .Range("B1").Resize(3, iCol).Value'

iNum = sh.Range("A" & Rows.Count).End(xlUp).Row '一般只改Range中的列值,如工作表是从B列开始的,这里就变成Range("B" & Rows.Count).End(xlUp).Row

sh.Range("A" & iNum1).Resize(1, iCol).Value = .Range("A" & i).Resize(1, iCol).Value

'在新表中粘贴工作表数据,一般只改动Range的列值,若工作表是从B列开始的,则就改成B变成Range("B" & iNum1).Resize(1, iCol).Value = .Range("B" & i).Resize(1, iCol).Value

Next i

End With

Application.ScreenUpdating = True '打开屏幕刷新

End Sub

(3)代码输入完成后,点击菜单栏里的“运行子过程”。这样工作表就拆分完成了。


完成如下:


通过这种方式一键完成工作表拆分了。


第2种:

常规拆分——数据透视表

数据透视表真的非常好用,它不仅在数据统计分析上拥有绝对的优势,而且利用筛选页也可以帮助我们实现拆分工作表的功能。步骤如下:

(1)选择数据源任一单元格,单击插入选项卡下的“数据透视表”。位置选择现有工作表,单击确定。

(2)把要拆分的字段“城市”放到筛选字段,“日期”“业务员”字段放在行字段,“销售额”放在值字段。

(3)修改数据透视表格式,便于在生成新工作表的时候形成表格格式。

选择“数据透视表工具”下方“设计”选项卡里的“报表布局”下拉菜单的“以表格形式显示”。

选择“数据透视表工具”下方“设计”选项卡里的“报表布局”下拉菜单的“重复所有项目标签”。

选择“数据透视表工具”下方“设计”选项卡里的“分类汇总”下拉菜单的“不显示分类汇总”。

完成结果如下:

(4)最后把透视表拆分到各个工作表。选择“数据透视表工具”下方“分析”选项卡“数据透视表”功能块里的“选项”下拉菜单的“显示报表筛选页”,选定要显示的报表筛选页字段为“城市”。

(5)为了方便后续处理,把数据透视表修改成普通表格。选择第一个工作表 “北京”,按住Shift,点击最后一个工作表“重庆”,形成工作表组。这样就能批量对所有工作表进行统一操作。

全选复制粘贴为值。


删除前两行,再把日期这列列宽调整一下就完成了。结果如下:

数据透视表这种方法比较容易上手,但是步骤比较多,而VBA操作简单,但需要学习的东西很多。大家根据自己实际情况选择使用,觉得不错的话点赞吧!


,
    推荐阅读
  • 心情不好的朋友圈(心情不好的朋友圈列述)

    下面更多详细答案一起来看看吧!心情不好的朋友圈可能是现在感情,太过昂贵,让付出真心的人,好狼狈。无法拼凑回昨天,只剩一份深深的惆怅,无处安放。我好像只是偶尔被需要,从来没有很重要。如果你开始想念我,记住,不是我自己要走,是你自己先松手。或许太重感情的人,日子终究不会好过。信任,依赖,念旧,分分钟把你虐的万劫不复。真正让人难过的往往都是一些小事,就像那天下了很大的雨,别人在等伞,而我在等雨停。

  • 莫子仪名字打分116分

    文章目录:一、莫子仪相关名字打分117二、莫子仪相关名字评分113三、莫子仪相关名字推荐四、莫子仪相关名字大全五、其他人还看了一、莫子仪相关名字打分117莫洪宪莫斯蛙莫森莫守信莫小康莫卡妮莫强莫乙莫宝鸿莫斯拉莫风流莫于川莫特斯莫朝晖莫轩莫惜莫卡努莫戈莫小祺莫合莫莫猴莫长生莫斯肯莫筠莫佳琪莫少哀莫晓宇莫静波莫菁莫言蛙莫树平莫堪安莫荣新莫小熙莫雨莫少莫拼音莫航莫尼塔莫北莫托莫洛伊莫国才莫兰多莫珊珊莫碧

  • 青桔的功效与作用禁忌(青桔有什么作用)

    青桔的功效与作用禁忌青桔茶是由青皮金桔制成的,金橘味甘、性温,具有开胃生津、消食醒酒、解郁化痰、美容护肤等作用。金橘对防止血管破裂,减少毛细血管脆性和通透性,减缓血管硬化有良好的作用。金桔对血压能产生双向调节,高血压、血管硬化以及冠心病患者可以食用。金桔可以增强机体的抗寒能力,防治感冒,还可以帮助预防色素沉着,增进皮肤光泽与弹性,减缓衰老,避免肌肤松弛。

  • 红楼梦第五章知识点总结(红楼梦结构缕析)

    尤其不能容忍称刘姥姥为"母媓虫"。"母","女"也,"蝗","皇"也,"母蝗"即"女皇"。自此山來,蟲為蛇,蛇号為魚。相传孔子修《春秋》,一字含褒贬。后来称文章用笔曲折而意含褒贬的写作手法为春秋笔法。林黛玉以悲天恸地《葬花吟》感动了花神即华夏始祖女娲娘娘,遂眷顾子民,下凡探视,乃是情理中事。第四十四回写因给凤姐过生日生出的一场闹剧,煞是好看。

  • 竹笋和什么炒好吃(竹笋炒肉做法)

    接下来我们就一起去研究一下吧!竹笋和什么炒好吃竹笋可以素炒,也可以和猪肉、排骨、或者腊肉一起炒着吃。鲜笋、猪肉、香葱、盐、味精、糖、料酒、酱油、食用油各适量。锅里放少许油,烧至4成热,把肥猪肉放进去炒至微微出油,放进蒜米爆香,把腌制好的肉片放进去炒至肉色发白。

  • 牙线使用小常识(牙线使用小常识介绍)

    我们一起去了解并探讨一下这个问题吧!牙线使用小常识牙线放入牙缝时要慢慢滑动住放,以免太过用力伤害到牙龈。牙线最好是每天晚饭后使用一次,用的过多对牙齿也有伤害。牙线并不能代替正常的刷牙及漱口水的使用。牙线是一次性的用品,用后请不要再次使用。一定要购买正规品牌的牙线,以免牙线本身对身体有危害。使用牙线时,每颗牙齿表面都要上下刮4~6次,直到牙齿表面干净为止。使用后,漱口,清除留下的菌斑和食物残渣。

  • 什么样的女人男人不敢轻易撩(撩女人是有套路的)

    男女之间的交往,有撩才有心动,有撩才有爱情,异性之间是离不开相互的吸引,离不开相互产生暧昧的感情和行为。我们会发现,现在这个社会上有很多所谓的剩男剩女,导致这样的状况的原因其实主要有二。第二个主要原因就是在他们的印象里,谈恋爱是需要花费大量的时间和精力的。撩人其实并不是一种贬义词,其深层次的含义是需要划分的。对于女人来说,其实要打动一个女人的心并不是特别的困难。虽然我们常说男追女隔座山。

  • 故障代码大全图解(常见后处理故障代码含义及维修思路)

    仪表代码:2773故障解释:氮氧化物监测数据有效但高于正常工作范围发动机氮氧化物排放量高于建议级别发动机保护策略:氮氧化物传感器将被停用。发动机将在下一次车速为零时减额运转。故障维修思路:1、后处理柴油机排气处理液不符合技术规范;2、尿素泵或后处理柴油机排气处理液管路外部泄漏;3、柴油含硫量过高,使SCR催化器结垢,导致氮氧化物含量偏高;4、后处理喷嘴有故障,喷嘴部分或完全堵塞。

  • 2023成都绿道畅游卡可以兑换哪些酒店的优惠?

    绿道畅游卡有优惠的酒店平乐古镇平沙落雁度假酒店:标间平沙落雁度假酒店:套房西岭雪山景区斯堪的纳酒店:大床或标准间/晚(含双早)安仁古镇德门仁里精品酒店:大床或标准间/晚(含双早)说明:具体优惠价格需要等官方小程序开了兑换入口之后才能知道哦。积分兑换截止时间为2023年8月31日,8月31日之后,所有积分自动清零。成都天府绿道小程序平台在法律规定的范围内具有最终解释权。

  • 订婚穿什么衣服(订婚仪式的穿着介绍)

    订婚时女性穿得较为正式为佳,可以穿着礼服裙旗袍或者抹胸裙,正式、优雅并且温婉,适合订婚典礼的氛围。女士穿着衣服时以红色或者较为明亮的颜色为主,更加喜庆。订婚时男士也应穿着较为正式的衣物,如西装、休闲西装等。订婚属于较为正式并且重要的场合,穿着正式能表示对于众人和订婚典礼的尊重,也可以穿着休闲西装,风格多变,较为随意,但是能凸显男性魅力。