Hi CaptRon
I missed a little to the response.

When you declare a variable as Variant:[vba]Dim xlOpenXMLWorkbookMacroEnabled [/vba]after you run the code it has the value "Empty".

In this piece of code...:[vba]If fname <> False Then
ActiveWorkbook.SaveAs Filename:=fname, _
FileFormat:=xlOpenXMLWorkbookMacroEnabled, _
CreateBackup:=False
End If[/vba] ...there is a classified conversion to 0 (zero). In XL2007, the build-in constant xlOpenXMLWorkbookMacroEnabled have value = 52. Therefore, this section does not work in XL2007.
If you declare in your procedure a constant:[vba]Const xlOpenXMLWorkbookMacroEnabled As Long = 52[/vba]you do not need to isolate parts of the code to another module. It should work properly in XL2003 and XL2007 and code should compile.

Artik