ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   testing for open workbook (https://www.excelbanter.com/excel-programming/341195-testing-open-workbook.html)

Gary Keramidas[_4_]

testing for open workbook
 
i've seen almost identical code in a few place, but it doesn't work, the
variable always evaluates to nothing. why? i just need to test if the other
workbook is open and if not, open it.

Dim WBook As Workbook
'...
On Error Resume Next
Set WBook = Workbooks("Workbook2")
On Error GoTo 0
If WBook Is Nothing Then
'your sorting code
End If


--


Gary




Rowan[_9_]

testing for open workbook
 
Try

Set WBook = Workbooks("Workbook2.xls")

Regards
Rowan

Gary Keramidas wrote:
i've seen almost identical code in a few place, but it doesn't work, the
variable always evaluates to nothing. why? i just need to test if the other
workbook is open and if not, open it.

Dim WBook As Workbook
'...
On Error Resume Next
Set WBook = Workbooks("Workbook2")
On Error GoTo 0
If WBook Is Nothing Then
'your sorting code
End If



Gary Keramidas[_4_]

testing for open workbook
 
i've put the whole name in there and it didn't make any difference

--


Gary


"Rowan" wrote in message
...
Try

Set WBook = Workbooks("Workbook2.xls")

Regards
Rowan

Gary Keramidas wrote:
i've seen almost identical code in a few place, but it doesn't work, the
variable always evaluates to nothing. why? i just need to test if the
other workbook is open and if not, open it.

Dim WBook As Workbook
'...
On Error Resume Next
Set WBook = Workbooks("Workbook2")
On Error GoTo 0
If WBook Is Nothing Then
'your sorting code
End If



Gary Keramidas[_4_]

testing for open workbook
 
this seems to work for what i need

On Error GoTo OpenFile
Windows("workbook.xls").Activate
GoTo CopyRoutine

OpenFile:
'open the workbook

CopyRoutine
' do my copy routine



it if isn't open, it won't activate.
--


Gary


"Rowan" wrote in message
...
Try

Set WBook = Workbooks("Workbook2.xls")

Regards
Rowan

Gary Keramidas wrote:
i've seen almost identical code in a few place, but it doesn't work, the
variable always evaluates to nothing. why? i just need to test if the
other workbook is open and if not, open it.

Dim WBook As Workbook
'...
On Error Resume Next
Set WBook = Workbooks("Workbook2")
On Error GoTo 0
If WBook Is Nothing Then
'your sorting code
End If



Gary Keramidas[_4_]

testing for open workbook
 
not for somebody else, only me. i have both workbooks open in one instance
of excel. both workbooks appear under the window menu. the variable always
evaluates to nothing.

don't know why it won't work.
--


Gary


"NickHK" wrote in message
...
Gary,
You're testing whether "Workbook2" is open in the current instance of
Excel.
If it is not, the WBook will be Nothing.

What I think you mean is "Is Workbook2 already opened by somebody else ?
For that you have to try and open it:
Set WBook = Workbooks.Open (..argument..)

You may want to check out .DisplayAlerts also.

NickHK

"Gary Keramidas" wrote in message
...
i've seen almost identical code in a few place, but it doesn't work, the
variable always evaluates to nothing. why? i just need to test if the

other
workbook is open and if not, open it.

Dim WBook As Workbook
'...
On Error Resume Next
Set WBook = Workbooks("Workbook2")
On Error GoTo 0
If WBook Is Nothing Then
'your sorting code
End If


--


Gary








NickHK

testing for open workbook
 
Gary,
You're testing whether "Workbook2" is open in the current instance of Excel.
If it is not, the WBook will be Nothing.

What I think you mean is "Is Workbook2 already opened by somebody else ?
For that you have to try and open it:
Set WBook = Workbooks.Open (..argument..)

You may want to check out .DisplayAlerts also.

NickHK

"Gary Keramidas" wrote in message
...
i've seen almost identical code in a few place, but it doesn't work, the
variable always evaluates to nothing. why? i just need to test if the

other
workbook is open and if not, open it.

Dim WBook As Workbook
'...
On Error Resume Next
Set WBook = Workbooks("Workbook2")
On Error GoTo 0
If WBook Is Nothing Then
'your sorting code
End If


--


Gary






NickHK

testing for open workbook
 
Gary,
It does work if there is a WB called that name.
Comment out the "On Error.. and see what error is being raised.

NickHK

"Gary Keramidas" wrote in message
...
not for somebody else, only me. i have both workbooks open in one instance
of excel. both workbooks appear under the window menu. the variable always
evaluates to nothing.

don't know why it won't work.
--


Gary


"NickHK" wrote in message
...
Gary,
You're testing whether "Workbook2" is open in the current instance of
Excel.
If it is not, the WBook will be Nothing.

What I think you mean is "Is Workbook2 already opened by somebody else ?
For that you have to try and open it:
Set WBook = Workbooks.Open (..argument..)

You may want to check out .DisplayAlerts also.

NickHK

"Gary Keramidas" wrote in message
...
i've seen almost identical code in a few place, but it doesn't work,

the
variable always evaluates to nothing. why? i just need to test if the

other
workbook is open and if not, open it.

Dim WBook As Workbook
'...
On Error Resume Next
Set WBook = Workbooks("Workbook2")
On Error GoTo 0
If WBook Is Nothing Then
'your sorting code
End If


--


Gary










NickHK

testing for open workbook
 
Gary,
It does work if there is a WB called that name.
Comment out the "On Error.. and see what error is being raised.

NickHK

"Gary Keramidas" wrote in message
...
not for somebody else, only me. i have both workbooks open in one instance
of excel. both workbooks appear under the window menu. the variable always
evaluates to nothing.

don't know why it won't work.
--


Gary


"NickHK" wrote in message
...
Gary,
You're testing whether "Workbook2" is open in the current instance of
Excel.
If it is not, the WBook will be Nothing.

What I think you mean is "Is Workbook2 already opened by somebody else ?
For that you have to try and open it:
Set WBook = Workbooks.Open (..argument..)

You may want to check out .DisplayAlerts also.

NickHK

"Gary Keramidas" wrote in message
...
i've seen almost identical code in a few place, but it doesn't work,

the
variable always evaluates to nothing. why? i just need to test if the

other
workbook is open and if not, open it.

Dim WBook As Workbook
'...
On Error Resume Next
Set WBook = Workbooks("Workbook2")
On Error GoTo 0
If WBook Is Nothing Then
'your sorting code
End If


--


Gary











All times are GMT +1. The time now is 08:39 AM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com