When you say it doesn't work - which bit -- as I see it all but the clearcontents should work ... as is you're clearing contents of the new file as opposed to the old.
Be wary of how you declare variables... in VBA this:
declares a & b as Variants, only c is a String... (unlike .NET) you should therefore use
If the sheet contains code / objects your best bet would be to cre*ate a new workbook from scratch and then copy / paste values / formats etc from the main file to the new file (ie don't copy the sheet).
Bookmarks