我现在有几百个工作表文件,保存的是2007格式,现在需批量转换为2003的文件,请问如何操作?因为我要将这些文件全部汇总到一个工作簿中,而我现在只有工作表并入一个工作簿的宏,只支持2003版的。如果能将原来的宏代码改为支持2007的也可以。谢谢 原来的宏代码附上:Private Sub CommandButton1_Click() Dim Sh As Worksheet, MyName$, n% Application.DisplayAlerts = False Application.ScreenUpdating = False If ThisWorkbook.Sheets.Count > 1 Then If MsgBox("重新导入报表将删除原来报表,继续吗? ", 52, "警告") = 7 Then Exit Sub End If On Error Resume Next For Each Sh In Worksheets If Sh.Name <> ActiveSheet.Name Then Sh.Delete End If Next n = 1 MyName = Dir(ThisWorkbook.Path & "\*.xls") Range("a2:b65536").ClearContents Range("a2:b65536").Hyperlinks.Delete Do While MyName <> "" If MyName <> ThisWorkbook.Name Then Workbooks.Open ThisWorkbook.Path & "\" & MyName ActiveWorkbook.Sheets(1).Copy After:=ThisWorkbook.Sheets(n) n = n + 1 ThisWorkbook.Sheets(n).Name = Left(MyName, InStr(MyName, ".") - 1) Range("a" & n) = n - 1 Me.Hyperlinks.Add Range("b" & n), Address:="", SubAddress:="'" & ThisWorkbook.Sheets(n).Name & "'!A1", ScreenTip:=ThisWorkbook.Sheets(n).Name, TextToDisplay:=ThisWorkbook.Sheets(n).Name ActiveSheet.Hyperlinks.Add ActiveSheet.Range("p1"), Address:="", SubAddress:=Sheets(1).Name & "!A1", ScreenTip:="返回首页", TextToDisplay:="返回" Workbooks(MyName).Close End If MyName = Dir Loop Me.Activate Application.ScreenUpdating = True Application.DisplayAlerts = True End Sub
[此贴子已经被作者于2008-4-2 11:17:27编辑过] |