View Single Post
  #3   Report Post  
Posted to microsoft.public.excel.programming
JLGWhiz[_2_] JLGWhiz[_2_] is offline
external usenet poster
 
Posts: 1,565
Default "With ActiveSheet" validation question


Hi Barb, I suspect that the OP's DBF is actually Sheets(1) of the workbook.
Probably hidden since it needs a double click to activate it. But this is
all guesses.


"Barb Reinhardt" wrote in message
...
I'm not sure how you have an XLS file with no sheets in it. Whenever I've
tried to delete the last sheet in a workbook, I get an error.

I'm not exactly sure what you're doing, but I often refer to a sheet this
way

Dim myWS as Excel.Worksheet

Set myWS = ActiveSheet 'or some other sheet you want to work on.

or you could do something like this
Dim myWB as Excel.Workbook

Set myWB = WOrkbooks.open(filename) 'Your DBF File
Set myWS = nothing
on error resume next
Set myWS = mywb.worksheets("SheetName")
On error goto 0
if not myws is nothing then
'Action on worksheet.

end if

These are some ideas.

HTH,
Barb Reinhardt


"Virgil" wrote:

Hi

Issue: ActiveSheet not always valid

Context :
I have a VBA sub called via a macro . It is in an XLS file with no SHEETS
in
it.
The macro is used for DBF files opened by Excel.

With ActiveSheet

...

End With

Mo
Sometimes when i run the macro, my trace shows "Form" for the ActiveSheet
name which on paper does not exist. Usually it is the name of the DBF
file.
The DBF can be opened by a double lick or after excel has been started.
Then the XLS macro file is opened. As the DBF file name may change i
don't
want to force some name on it.
Usually all i do is click on a DBF field then re-run the macro.

Is there a simple way to "active" the only Sheet available in the
session in a generic way ?


Thanks