ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[求助] 如何将excel表中的数据按照固定格式自动填充到模板中,并生成多个表格

[复制链接]

TA的精华主题

TA的得分主题

发表于 2020-2-17 15:44 | 显示全部楼层 |阅读模式
怎么才能把总表的数据按照固定格式拆分到分表中,黄色是需要拆分的数据,分表的序号是1000+总表的排序号。

数据比较多将近一万条,之前都是一个个复制粘贴,求一个大神帮忙写个代码快些完成任务!!!

附件.rar

12.65 KB, 下载次数: 41

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-2-17 16:06 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2020-2-17 17:10 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
Sub test()
Application.ScreenUpdating = False
Set sh = ThisWorkbook.Worksheets(1)
Set sht = ThisWorkbook.Worksheets("模板")
ar = sh.[a1].CurrentRegion
For i = 1 To UBound(ar)
    If Trim(ar(i, 1)) <> "" Then
        sht.Copy
        With ActiveWorkbook.Worksheets(1)
            .[c2] = "1000" & ar(i, 1)
            .[c3] = ar(i, 2)
            .[e3] = ar(i, 3)
            .[g3] = ar(i, 4)
        End With
         ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & "\" & "1000" & ar(i, 1)
         ActiveWorkbook.Close
    End If
Next i
Application.ScreenUpdating = False
MsgBox "ok!"
End Sub

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2020-2-17 17:11 | 显示全部楼层
总表.rar (14.36 KB, 下载次数: 119)

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-2-17 20:26 | 显示全部楼层

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-2-17 20:28 | 显示全部楼层
3190496160 发表于 2020-2-17 17:10
Sub test()
Application.ScreenUpdating = False
Set sh = ThisWorkbook.Worksheets(1)

你好,这个代码有点问题,不能用,不过还是要感谢你

TA的精华主题

TA的得分主题

发表于 2020-2-17 20:54 来自手机 | 显示全部楼层
本帖最后由 3190496160 于 2020-2-17 20:56 编辑
搁浅灬 发表于 2020-2-17 20:28
你好,这个代码有点问题,不能用,不过还是要感谢你


在你上传的附件中测试是完全没问题的,模板已经放到总表文件中了,同时,一个不能用,也太模糊了吧

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-2-18 16:22 | 显示全部楼层
3190496160 发表于 2020-2-17 20:54
在你上传的附件中测试是完全没问题的,模板已经放到总表文件中了,同时,一个不能用,也太模糊了吧

不好意思,是我自己的问题,没用对,你这个代码很好,很好用,非常感谢!

TA的精华主题

TA的得分主题

发表于 2023-9-15 14:11 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
Sub test()
Application.ScreenUpdating = False
Set sh = ThisWorkbook.Worksheets(1)
Set sht = ThisWorkbook.Worksheets("模板")
ar = sh.[a1].CurrentRegion
For i = 2 To UBound(ar)
    If Trim(ar(i, 1)) <> "" Then
        sht.Copy
        With ActiveWorkbook.Worksheets(1)
            .[c2] = ar(i, 3)
            .[G2] = ar(i, 4)
            .[C6] = ar(i, 5)
        End With
         ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & "\" & ar(i, 3)
         ActiveWorkbook.Close
    End If
Next i
Application.ScreenUpdating = False
MsgBox "ok!"
End Sub
您好,不知道卡在”  ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & "\" & ar(i, 3)“这里,然后弹出无效过程调用或参数“的提示,请问知道什么原因吗?@3190496160
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

关闭

最新热点上一条 /1 下一条

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

GMT+8, 2024-4-26 19:01 , Processed in 0.043000 second(s), 13 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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