Excel精英培训网

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

求将所有2007格式的EXCEL文件转换为.XLS且增加一个名为“目录”的工作表的宏代码

[复制链接]
发表于 2014-2-21 19:27 | 显示全部楼层 |阅读模式
20学分
我用的是EXCEL2007,同事用的都是2003,他们又不跟 潮流,连兼容软件都不肯装,造 成我每次发EXCEL过去都要将它们转为尾缀为“.XLS”的2003格式文件,还要给他们创建一个名为“目录”的工作表。
我想求高手给我写一个宏代码C(在宏薄A中),A所在文件夹为B,宏C能将B文件夹下所有2007格式的EXCEL文件转换为.XLS,且增加一个名为“目录”的工作表。
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2014-2-21 19:27 | 显示全部楼层
  1. Sub C()
  2. Application.DisplayAlerts = False
  3.     Dim FM As String, PT As String
  4.     Dim WO As Workbook, SH As Worksheet
  5.     PT = ThisWorkbook.Path & ""
  6.     FM = Dir(PT & "*.xlsx")
  7.     If FM <> ThisWorkbook.Name Then
  8.     Do While FM <> ""
  9.         Set WO = Workbooks.Open(PT & FM)
  10.         Set SH = WO.Sheets.Add(before:=Sheets(1))
  11.         SH.Name = "目录"
  12.         WO.SaveAs PT & Left(FM, Len(FM) - 1)
  13.         WO.Close True
  14.         Kill PT & FM
  15.         FM = Dir
  16.     Loop
  17.     End If
  18.    
  19.     Application.DisplayAlerts = True
  20. End Sub
复制代码

评分

参与人数 1 +1 收起 理由
清风明月12 + 1 赞一个!

查看全部评分

回复

使用道具 举报

发表于 2014-2-21 20:11 | 显示全部楼层
回复

使用道具 举报

 楼主| 发表于 2014-2-21 20:15 | 显示全部楼层
老师,我想包含“.XLSX”“.XLSM”“.XLSM”“.XLTX”“.XLTM”“.XLSB”,能帮我一下吗?
回复

使用道具 举报

发表于 2014-2-21 20:32 | 显示全部楼层
可以啊。
FM = Dir(PT & "*.xlsx")
改为FM = Dir(PT & "*.xls*")
解决问题,记得给最佳答案哈。
嘿嘿。
回复

使用道具 举报

发表于 2014-2-21 20:34 | 显示全部楼层
测试时。
请先备份文件。
要不然,都删了。
呵。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-6-2 01:28 , Processed in 1.745574 second(s), 8 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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