You should always check if the workbook is open before opening a file via VBA. You can do so with a simple function...
[vba]function WbOpen(wbName as string) as Boolean
'Originally found by Jake Marx
on error resume next
wbopen = len(workbooks(wbname).name)
end function[/vba]
HTH