Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 3995|回复: 8

[已解决]工作薄中每个工作表转换成独立的Excel文件-不带VBA代码导出,但工作表中的公式,...

[复制链接]
发表于 2014-3-30 19:52 | 显示全部楼层 |阅读模式
工作薄中每个工作表转换成独立的Excel文件-不带VBA代码导出,但工作表中的公式,函数要保留

请朋友们,在这个上面帮我修改下,谢谢大家了!

工作薄中每个工作表转换成独立的Excel文件-不带VBA代码导出,但工作表中的公式,函数要保留.rar (7.8 KB, 下载次数: 108)
发表于 2014-3-30 21:02 | 显示全部楼层
  1. Sub Macro1()
  2. On Error Resume Next
  3. Dim i&, zf$
  4. Application.ScreenUpdating = False
  5. Application.DisplayAlerts = False
  6. Application.SheetsInNewWorkbook = 1
  7. For i = 1 To Sheets.Count
  8.     If Sheets(i).Name <> "界面" Then
  9.         zf = Sheets(i).Name & ".xls" '文件名
  10.         With Workbooks.Add
  11.             ThisWorkbook.Sheets(i).Copy after:=.Sheets(.Sheets.Count)
  12.             .Sheets(1).Delete
  13.             .SaveAs Filename:=ThisWorkbook.Path & "" & zf '路径+文件名
  14.         End With
  15.         Workbooks(zf).Close 1
  16.     End If
  17. Next
  18. Application.SheetsInNewWorkbook = 3
  19. Application.DisplayAlerts = True
  20. Application.ScreenUpdating = True
  21. End Sub
复制代码

点评

工作表里的代码貌似会导出来吧。  发表于 2014-3-30 21:14
回复

使用道具 举报

发表于 2014-3-30 21:04 | 显示全部楼层
………………

新建文件夹.zip

11.12 KB, 下载次数: 22

回复

使用道具 举报

发表于 2014-3-30 21:18 | 显示全部楼层
dsmch 发表于 2014-3-30 21:02

hwc2ycy 工作表里的代码貌似会导出来吧。
代码在工作簿,复制工作表不会导出代码,祥见附件。
回复

使用道具 举报

 楼主| 发表于 2014-3-30 21:22 | 显示全部楼层
dsmch 发表于 2014-3-30 21:04
………………

感谢了朋友

你好,就是,代码还是会被导出来。
回复

使用道具 举报

发表于 2014-3-30 21:27 | 显示全部楼层
yjwdjfqb 发表于 2014-3-30 21:22
感谢了朋友

你好,就是,代码还是会被导出来。

模块中代码不会导出,导出的是你的工作表代码。
回复

使用道具 举报

 楼主| 发表于 2014-3-30 21:31 | 显示全部楼层
dsmch 发表于 2014-3-30 21:27
模块中代码不会导出,导出的是你的工作表代码。

就是我,我就是想,所有的代码都不导出,包括工作表下的VBA代码

当前工作薄所有的工作表都导出

麻烦朋友了!
回复

使用道具 举报

发表于 2014-3-30 21:37 | 显示全部楼层
yjwdjfqb 发表于 2014-3-30 21:31
就是我,我就是想,所有的代码都不导出,包括工作表下的VBA代码

当前工作薄所有的工作表都导出

新建工作簿,复制工作表内容到新的工作簿,不过这种方法格式会略有变化。
回复

使用道具 举报

发表于 2014-3-30 21:41 | 显示全部楼层    本楼为最佳答案   
  1. Sub Macro1()
  2. Dim i&, zf$
  3. Application.ScreenUpdating = False
  4. Application.DisplayAlerts = False
  5. Application.SheetsInNewWorkbook = 1
  6. For i = 1 To Sheets.Count
  7.     If Sheets(i).Name <> "界面" Then
  8.         zf = Sheets(i).Name & ".xls" '文件名
  9.         With Workbooks.Add
  10.             ThisWorkbook.Sheets(i).Cells.Copy .Sheets(1).[a1]
  11.             .SaveAs Filename:=ThisWorkbook.Path & "" & zf '路径+文件名
  12.         End With
  13.         Workbooks(zf).Close 1
  14.     End If
  15. Next
  16. Application.SheetsInNewWorkbook = 3
  17. Application.DisplayAlerts = True
  18. Application.ScreenUpdating = True
  19. End Sub
复制代码
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-26 15:56 , Processed in 0.463786 second(s), 10 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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