I'd use:
Sub M_snb() c00="G:\OF\" sn = Filter(Split(CreateObject("wscript.shell").exec("cmd /c dir """ & c00 &"*.xls*"" /b/s").stdout.readall, vbCrLf), ".") For j = 0 To UBound(sn) With GetObject(sn(j)) For Each sh In .Sheets sh.Copy With ActiveWorkbook .SaveAs Replace(Replace(sn(j), "\", "_"), ".xls", "_" & sh.Name & "_"), 51 .Close 0 End With Next .Close 0 End With Next End Sub