Referring to the previous selected sheet in a macro

M

michaelberrier

Is there anyway to refer to the previous selected sheet in a macro?

In other words, the macro is designed on a sheet named "Master" and
switches back and forth between that sheet and another, lets call it
"Output".

"Master" is designed to be copied and renamed, but it always references
"Output" in certain macros.

The code currently begins on "Master" and goes something like this:

Range("A1:A10").Copy
Sheets("Output").Select
Range("A1:A10").Paste
Sheets("Master").Select
....and so on.

I need that same functionality if "Master" is named "Master2" or
"AbeVigoda" or whatever. Does VBA include syntax for Previous Sheet or
Last sheet or anything so that you can tell the macro to go back to
sheet it started from?

Thanks to all.
 
J

Jim Cone

Assuming the ActiveSheet is the start sheet then just assign the
sheet name to a string variable....
Dim strSheetName as String
strSheetName = ActiveSheet.Name
Use it like this...
WorkSheets(strSheetName).Range("xyz").Copy
-or-
Set an Object Variable to the ActiveSheet...
Dim objSheet as Excel.Worksheet
Set objSheet = ActiveSheet
Use it like this...
ObjSheet.Range("xyz").Copy
--
Jim Cone
San Francisco, USA
http://www.realezsites.com/bus/primitivesoftware


"michaelberrier"
<[email protected]>
wrote in message
Is there anyway to refer to the previous selected sheet in a macro?
In other words, the macro is designed on a sheet named "Master" and
switches back and forth between that sheet and another, lets call it
"Output".
"Master" is designed to be copied and renamed, but it always references
"Output" in certain macros.
The code currently begins on "Master" and goes something like this:

Range("A1:A10").Copy
Sheets("Output").Select
Range("A1:A10").Paste
Sheets("Master").Select
....and so on.
I need that same functionality if "Master" is named "Master2" or
"AbeVigoda" or whatever. Does VBA include syntax for Previous Sheet or
Last sheet or anything so that you can tell the macro to go back to
sheet it started from?
Thanks to all.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top