ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   I need "On Error" help (https://www.excelbanter.com/excel-programming/303334-i-need-error-help.html)

GregJG[_16_]

I need "On Error" help
 
I use this code to open a workbook

Set SourceWb = Workbooks.Open("f:\book1.xls")

but, if the workbook is already open, I'm guessing I would need to us
an "on error resume next"

But everything I have tried is not working.

can someone help

--
Message posted from http://www.ExcelForum.com


Tom Lavedas

I need "On Error" help
 
Since trying to open an already open workbook does NOT throw an error, it can't be trapped with an On Error statement. Rather, the condition is best handled by directly testing for the open book, something like this ...

For Each WB In Workbooks
bWBOpen = (StrComp(wb.FullName, "F:\book1.xls", vbTextCompare) = 1)
If bWBOpen Then
Set SourceWB = WB
Exit For
End If
Next
If Not bWBOpen Then Set SourceWB = Workbooks.Open("F:\book1.xls")

Tom Lavedas
===========


"GregJG " wrote:

I use this code to open a workbook

Set SourceWb = Workbooks.Open("f:\book1.xls")

but, if the workbook is already open, I'm guessing I would need to use
an "on error resume next"

But everything I have tried is not working.

can someone help?


---
Message posted from http://www.ExcelForum.com/



Chip Pearson

I need "On Error" help
 
Greg,

You should first test to see if the workbook is already open, and
if not, open it. For example,

Dim WB As Workbook
Dim SourceWB As Workbook
For Each WB In Workbooks
If StrComp(WB.FullName, "H:\Book1.xls", vbTextCompare) = 0
Then
' wb is open
Set SourceWB = WB
Exit For
End If
Next WB
If SourceWB Is Nothing Then
Set SourceWB = Workbooks.Open("H:\Book1.xls")
End If



--
Cordially,
Chip Pearson
Microsoft MVP - Excel
Pearson Software Consulting, LLC
www.cpearson.com



"GregJG " wrote in
message ...
I use this code to open a workbook

Set SourceWb = Workbooks.Open("f:\book1.xls")

but, if the workbook is already open, I'm guessing I would need

to use
an "on error resume next"

But everything I have tried is not working.

can someone help?


---
Message posted from http://www.ExcelForum.com/





All times are GMT +1. The time now is 01:20 AM.

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