View Single Post
  #1   Report Post  
Posted to microsoft.public.excel.programming
GerryGerry GerryGerry is offline
external usenet poster
 
Posts: 18
Default getting the selected range and active cell of a non active workshe

Thank you for this. I'll try it tommorow and let everyone know how it went.

"Dave Peterson" wrote in message
...
Why would changing sheets to find the activecell, then changing back to
the
original worksheet cause a problem?

If you have events that do things, turn them off.

Option Explicit
Sub testme()

Dim wks As Worksheet
Dim StartingWks As Worksheet

With Application
.ScreenUpdating = False
.EnableEvents = False
End With

Set StartingWks = ActiveSheet

For Each wks In ActiveWorkbook.Worksheets
If wks.Name = ActiveSheet.Name Then
'skip it
Else
wks.Activate
MsgBox ActiveCell.Address(external:=True)
End If
Next wks

StartingWks.Activate

With Application
.ScreenUpdating = False
.EnableEvents = False
End With

End Sub

GerryGerry wrote:

Hi,

Thank you for this. You have understood exactly what I wanted although I
did
use the wrong terminology. I was wondering whether this was achievable
without activating the sheet (even with screenupdating turned off). It
seems
a little surprising to me that this info is not accessible directly
somehow
through excels object model.

It's not just that the code is cumbersome, it's the fact that I can't
loose
the focus of the current cell while obtaining values from the other
worksheets in my intended application.

Thanks to all
Gerry

"Mike H" wrote in message
...
Hi,

If a sheet is not active, no cells have focus, none are active, none
are
selected. You cannot use those properties on an inactive sheet.

If you want the address of the cell that would be active if the sheet
was
selected then you can do this

Application.ScreenUpdating = False
Sheets("Sheet2").Select
Where = Selection.Address
Sheets("Sheet1").Select
MsgBox "The selected cell on Sheet2 is " & Where
Application.ScreenUpdating = True

With screenupdating being false you will not see sheet 2 being
fleetingly
activated.

Mike

"GerryGerry" wrote:

Can one access the active cell of a non active sheet (without
activating
it
first) in VBA as well as the selected range?

any help much appreciated as always
(i'm using Excel 2003)




--

Dave Peterson