注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

零售创新,创新那些事儿,SPSS,VBA

零售创新

 
 
 

日志

 
 
关于我

新浪微博,零售创新 研究经理,数据分析师 希望和市场研究和零售业的同事共同进步! 本博客发表的都是免费或试用的资料,如果有版权问题请发邮件wangli12a@163.com联系删除。 spss excel vba blog

网易考拉推荐

已解决)如何将一个总表拆分成N个分表  

2012-03-30 13:57:09|  分类: VB和VBA知识 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
已解决)如何将一个总表拆分成N个分表


请老师指导学习一下如何将一个总表拆分成N个分表,
附件所示,有一个汇总表,现在想把它按部门分成N个分表。请问如何实现?
即:将总表拆分成:售后服务部.xls,售后服务部.xls,采购部.xls,销售部.xls。各表依据部门这个字段内容进行拆分,工作薄名称以部门这个字段内容命名。

Sub TEST()

Dim OBS As Worksheet, TGB As Workbook
Dim Dept%
Set OBS = ThisWorkbook.Sheets(1)

For Dept = 2 To [A65536].End(3).Row

If OBS.Cells(Dept, 2) <> OBS.Cells(Dept - 1, 2) Then
Set TGB = Workbooks.Add
TGB.SaveAs Filename:=OBS.Cells(Dept, 2)
OBS.Rows(1).Copy TGB.Sheets(1).Rows(1)
End If
OBS.Rows(Dept).Copy Rows([A65536].End(3).Row + 1)

Next Dept
End Sub

 

 

 

谢谢老师指导,看了那么多相关知识代码,还是老师您这代码最简洁,还有一个问题需要老师指导一下,如果我想把生成的表默认保存在分表文件夹中,需要如何用代码实现。

 

改好了, 请试试, 不要叫我老师, 我也是新手.
Dim Dept%, OBS As Worksheet, TGB As Workbook
Set OBS = ThisWorkbook.Sheets(1)

For Dept = 2 To [A65536].End(3).Row

If OBS.Cells(Dept, 2) <> OBS.Cells(Dept - 1, 2) Then
Set TGB = Workbooks.Add
OBS.Rows(1).Copy TGB.Sheets(1).Rows(1)
End If
OBS.Rows(Dept).Copy Rows([A65536].End(3).Row + 1)
If OBS.Cells(Dept, 2) <> OBS.Cells(Dept + 1, 2) Then
TGB.Close True, "D:\My Documents\桌面\总表拆分成分表\分表\" & OBS.Cells(Dept, 2) & ".xls"
End If

Next Dept

  评论这张
 
阅读(1664)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017