View Single Post
  #3   Report Post  
Posted to microsoft.public.excel.programming
Pete[_18_] Pete[_18_] is offline
external usenet poster
 
Posts: 8
Default Lost reference to workbook

Hi Dave -

Thanks very much for your reply -- it works.

However I still have a problem. If the workbook in question was
"dirty", then I lose all my changes. When I re-open the file, I see
the message: "Foo.xla is already open. Reopening will cause any
changes you made to be discarded. Do you want to reopen Foo.xla?"

Does anyone have any idea how to handle this problem?

Thanks,
Pete

Dave Peterson wrote in message ...
Have an initialization routine that checks that variable:

Dim dataWB As Workbook

Set dataWB = Nothing
On Error Resume Next
Set dataWB = Workbooks("youraddin.xla")
On Error GoTo 0

If dataWB Is Nothing Then
Set dataWB = Workbooks.Open(Filename:="x:\yourpath\youraddin.xl a")
End If



Pete wrote:

Hi all-

I have an application in which I use separate workbooks to store
persistent data. When I open (or create) these "data workbooks", I set
IsAddin = true, so the user is unable to see the data worksheets
directly.

I maintain a global variable DataWb as Workbook to access the single
active data workbook.

The problem is: When I am debugging, and the VBE is "reset", my global
variable DataWb loses its value (that is, it is re-initialized), but
the data workbook itself remains open. Since the data workbook has
IsAddin set, it does not appear in the Workbooks collection.

Does anyone know how to re-establish access to this data workbook
after a reset?

Thanks very much,
Pete