ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
Python自动化办公应用大全 Excel 2021函数公式学习大典 Kutools for Office 套件发布 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
12
返回列表 发新帖
楼主: ZYX817

[求助] 将一个总表按按客户名称拆为独立的表保存

[复制链接]

TA的精华主题

TA的得分主题

发表于 2021-5-24 18:59 | 显示全部楼层
ZYX817 发表于 2021-5-24 17:02
拆分的几个表合并在同一个表可以吗?

稍加修改即可

拆分.zip

63.79 KB, 下载次数: 35

TA的精华主题

TA的得分主题

 楼主| 发表于 2021-5-25 16:15 | 显示全部楼层

自己微加修后增加了另两个表,变成只能分拆第一和第四个表。。能不能麻烦大神帮我写完万分感激

TA的精华主题

TA的得分主题

 楼主| 发表于 2023-4-25 17:18 | 显示全部楼层
marchwen01 发表于 2021-5-21 19:17
还好,可以写出一些新意。

可以增加拆分后报表保留原报表的格式吗

TA的精华主题

TA的得分主题

发表于 2023-4-27 16:31 | 显示全部楼层
ZYX817 发表于 2023-4-25 17:18
可以增加拆分后报表保留原报表的格式吗

考古-保留格式-仅参考.rar (22.58 KB, 下载次数: 10)

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2023-4-27 21:04 | 显示全部楼层
参与一下。

多表拆分为多工作簿多表。

QQ图片20230427210119.png

拆分.zip

97.95 KB, 下载次数: 10

评分

2

查看全部评分

TA的精华主题

TA的得分主题

发表于 2025-3-21 20:42 | 显示全部楼层
代码重写,原代码有点小问题。附件本身也有问题,表与表之间拆分字段名不一致,造成拆分后表部分数据丢失。

样表.zip

89.1 KB, 下载次数: 9

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2025-3-21 20:45 | 显示全部楼层
  1. Sub ykcbf()   '//2025.3.21 多表拆分为多工作簿多表
  2.     Application.ScreenUpdating = False
  3.     Application.DisplayAlerts = False
  4.     Set d = CreateObject("Scripting.Dictionary")
  5.     Dim tm: tm = Timer
  6.     Set ws = ThisWorkbook
  7.     p = ThisWorkbook.Path & "\拆分"
  8.     xm = "一键拆分"
  9.     On Error Resume Next
  10.     bt = 1
  11.     For Each sht In ws.Sheets
  12.         If sht.Name <> xm Then
  13.             With sht
  14.                 arr = .UsedRange
  15.                 col = .Rows(bt).Find("单位名称").Column
  16.             End With
  17.             For i = bt + 1 To UBound(arr)
  18.                 If arr(i, col) <> Empty Then d(arr(i, col)) = ""
  19.             Next
  20.         End If
  21.     Next
  22.     For Each k In d.keys
  23.         ws.Sheets.Copy
  24.         Set wb = ActiveWorkbook
  25.         For Each sht In wb.Sheets
  26.             If sht.Name <> xm Then
  27.                 With sht
  28.                     If .FilterMode = True Then .FilterMode = False
  29.                     arr = .UsedRange
  30.                     col = .Rows(bt).Find("单位名称").Column
  31.                     .Rows(bt).AutoFilter Field:=col, Criteria1:="<>*" & k & "*"
  32.                     .UsedRange.Offset(bt).Delete
  33.                     .AutoFilterMode = False          '//取消筛选状态
  34.                 End With
  35.             End If
  36.         Next
  37.         wb.SaveAs p & k
  38.         wb.Close
  39.     Next
  40.     Application.ScreenUpdating = True
  41.     Application.DisplayAlerts = True
  42.     MsgBox "共用时:" & Format(Timer - tm, "0.000") & "秒!"
  43. End Sub
复制代码


评分

2

查看全部评分

TA的精华主题

TA的得分主题

发表于 2025-4-8 12:45 | 显示全部楼层
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2025-12-15 03:05 , Processed in 1.044847 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表