ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 1851|回复: 8

[已解决] 工作表拆分为单独文件

[复制链接]

TA的精华主题

TA的得分主题

发表于 2018-3-21 16:42 | 显示全部楼层 |阅读模式
1、将A列和B列作为表头,每一列单独输出为一个excel文件,sheet名称为“项目概况表”,文件名称为:"项目概况表 "+第7行+第4行+第16行+第5行
2、保存到指定位置
3、目标文件是想要生成的最终文件
写了部分代码,不能运行,请忽略。

工作表拆分.zip

59.68 KB, 下载次数: 10

TA的精华主题

TA的得分主题

发表于 2018-3-21 17:21 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
>>>>>>>>>>>>>>>

拆分工具.rar

35 KB, 下载次数: 24

TA的精华主题

TA的得分主题

发表于 2018-3-21 19:46 | 显示全部楼层
仅供参考
  1. Sub 拆分()
  2.   Dim arr
  3.   Dim rng As Range
  4.   Dim rng1 As Range
  5.   Dim wb As Workbook
  6.   Application.ScreenUpdating = False
  7.   Application.DisplayAlerts = False
  8.   With Worksheets("项目概况表")
  9.     bb = .Name
  10.     r = .Cells(.Rows.Count, 2).End(xlUp).Row
  11.     arr = .Range("a1:e" & r)
  12.     Set rng = .Range("a1:b" & r)
  13.     For j = 3 To 5
  14.        Set rng1 = .Range(.Cells(1, j), .Cells(r, j))
  15.        aa = .Cells(7, j) & "  " & .Cells(4, j) & "  " & .Cells(16, j) & "  " & .Cells(5, j)
  16.        Set wb = Workbooks.Add
  17.        With wb
  18.          With .Worksheets(1)
  19.              rng.Copy .[a1]
  20.              rng1.Copy .[c1]
  21.             .Columns("A:A").ColumnWidth = 8
  22.             .Columns("b:c").ColumnWidth = 22
  23.             .Name = "项目概况表"
  24.          End With
  25.         .SaveAs Filename:=ThisWorkbook.Path & "\目标文件" & bb & "  " & aa
  26.         .Close False
  27.        End With
  28.     Next j
  29.   End With
  30.   Application.ScreenUpdating = True
  31.   MsgBox "数据拆分完毕!"
  32. End Sub
复制代码

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2018-3-21 19:47 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2018-3-21 20:27 | 显示全部楼层

TA的精华主题

TA的得分主题

 楼主| 发表于 2018-3-22 09:41 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2018-3-22 10:04 | 显示全部楼层

TA的精华主题

TA的得分主题

 楼主| 发表于 2018-3-22 10:09 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2018-3-22 11:03 | 显示全部楼层
试一试
  1. Option Explicit
  2. Sub 每列保存为一个文件()
  3.     Dim rng, col%, rng_col, the_path$
  4.     the_path = "D:\Documents\99Others\Excelhome\工作表拆分\目标文件"
  5.     MkDir the_path      '确保先删除原有文件夹
  6.     rng = Sheet1.Range("A1:B204").Value: col = 3
  7.     Application.ScreenUpdating = False
  8.     Do While Len(Cells(2, col)) > 0
  9.         rng_col = Sheet1.Range(Cells(2, col), Cells(203, col)).Value
  10.         Workbooks.Add
  11.         With ActiveWorkbook.ActiveSheet
  12.             .Range("A1").Resize(203, 2) = rng
  13.             .Range("C2").Resize(202, 1) = rng_col
  14.             .Cells.EntireColumn.AutoFit
  15.             .Cells.HorizontalAlignment = xlCenter
  16.         End With
  17.         ActiveWorkbook.SaveAs the_path & "" & "项目概况表 " & Cells(7, 3).Text & " " & Cells(4, 3).Text _
  18.             & " " & Cells(16, 3).Text & " " & Cells(5, 3).Text
  19.         ActiveWorkbook.Close True
  20.         col = col + 1
  21.     Loop
  22.     Application.ScreenUpdating = True
  23. End Sub
复制代码
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-4-17 04:24 , Processed in 0.047037 second(s), 17 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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