как вариант:
[vba]Код
Sub d()
For Each c In Selection
If Len(Dir(c)) Then
Set wb = Workbooks.OpenXML(Filename:=c.Value, LoadOption:=xlXmlLoadImportToList)
n = Mid(c, 1, Len(c) - 4) & ".xlsx"
wb.SaveAs Filename:=n, FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
wb.Close
End If
Next
End Sub
[/vba]
не заметил что нужно не xlsx a xls - вот:
[vba]Код
Sub d_Xls()
Application.DisplayAlerts = False: Application.ScreenUpdating = False
For Each c In Selection
If Len(Dir(c)) Then
Set wb = Workbooks.OpenXML(Filename:=c.Value, LoadOption:=xlXmlLoadImportToList)
n = Mid(c, 1, Len(c) - 4) & ".xls"
wb.SaveAs Filename:=n, FileFormat:=xlExcel8
wb.Close
End If
Next
Application.DisplayAlerts = True: Application.ScreenUpdating = True
End Sub
[/vba]