ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   run code on opening workbook and apply code to certain sheets (https://www.excelbanter.com/excel-programming/336629-run-code-opening-workbook-apply-code-certain-sheets.html)

Jane

run code on opening workbook and apply code to certain sheets
 
I have vba code that I want to run when I open the workbook and I only want
it to apply to sheet3, sheet5 and sheet6. Would someone know how I need to
write this? Thanks.

Bob Phillips[_6_]

run code on opening workbook and apply code to certain sheets
 
Something like

Private Sub Workbook_Open()
Mymacro Worksheets("Sheet3")
Mymacro Worksheets("Sheet5")

Mymacro Worksheets("Sheet6")
End Sub

where your macro would be able to take a worksheet object as a parameter and
process that object.

'This is workbook event code.
'To input this code, right click on the Excel icon on the worksheet
'(or next to the File menu if you maximise your workbooks),
'select View Code from the menu, and paste the code



--

HTH

RP
(remove nothere from the email address if mailing direct)


"Jane" wrote in message
...
I have vba code that I want to run when I open the workbook and I only

want
it to apply to sheet3, sheet5 and sheet6. Would someone know how I need to
write this? Thanks.




Jane

run code on opening workbook and apply code to certain sheets
 
Thank you very much. Do I need to put my code with the code you gave me and
make it all as one? and what does "mymacro" represent? Forgive me I am
still learning. Thanks.

"Bob Phillips" wrote:

Something like

Private Sub Workbook_Open()
Mymacro Worksheets("Sheet3")
Mymacro Worksheets("Sheet5")

Mymacro Worksheets("Sheet6")
End Sub

where your macro would be able to take a worksheet object as a parameter and
process that object.

'This is workbook event code.
'To input this code, right click on the Excel icon on the worksheet
'(or next to the File menu if you maximise your workbooks),
'select View Code from the menu, and paste the code



--

HTH

RP
(remove nothere from the email address if mailing direct)


"Jane" wrote in message
...
I have vba code that I want to run when I open the workbook and I only

want
it to apply to sheet3, sheet5 and sheet6. Would someone know how I need to
write this? Thanks.





Bob Phillips[_6_]

run code on opening workbook and apply code to certain sheets
 
mymacro is the macro for your VBA code.

Your code can be in standard code module, it doesn't have to go with this
code. The important thing is to ensue your code can handle variable
worksheet objects.

--

HTH

RP
(remove nothere from the email address if mailing direct)


"Jane" wrote in message
...
Thank you very much. Do I need to put my code with the code you gave me

and
make it all as one? and what does "mymacro" represent? Forgive me I am
still learning. Thanks.

"Bob Phillips" wrote:

Something like

Private Sub Workbook_Open()
Mymacro Worksheets("Sheet3")
Mymacro Worksheets("Sheet5")

Mymacro Worksheets("Sheet6")
End Sub

where your macro would be able to take a worksheet object as a parameter

and
process that object.

'This is workbook event code.
'To input this code, right click on the Excel icon on the worksheet
'(or next to the File menu if you maximise your workbooks),
'select View Code from the menu, and paste the code



--

HTH

RP
(remove nothere from the email address if mailing direct)


"Jane" wrote in message
...
I have vba code that I want to run when I open the workbook and I only

want
it to apply to sheet3, sheet5 and sheet6. Would someone know how I

need to
write this? Thanks.







Jane

run code on opening workbook and apply code to certain sheets
 
Thank you again and even more for helping me on Sunday. My code currently
says: ThisWorkbook.Worksheets("sheet3").Activate so I have the code
currently saved under that one spreadsheet while I was testing it. Is that
wrong? Does it need to go somewhere else? I need to put it "somewhere" so
it knows to run on certain spreadsheets. I ran your code and changed
"myMacro" to "colorformat" which is my "sub" name but the code stopped right
after: Private Sub Workbook_Open(). Is that wrong?

"Bob Phillips" wrote:

mymacro is the macro for your VBA code.

Your code can be in standard code module, it doesn't have to go with this
code. The important thing is to ensue your code can handle variable
worksheet objects.

--

HTH

RP
(remove nothere from the email address if mailing direct)


"Jane" wrote in message
...
Thank you very much. Do I need to put my code with the code you gave me

and
make it all as one? and what does "mymacro" represent? Forgive me I am
still learning. Thanks.

"Bob Phillips" wrote:

Something like

Private Sub Workbook_Open()
Mymacro Worksheets("Sheet3")
Mymacro Worksheets("Sheet5")

Mymacro Worksheets("Sheet6")
End Sub

where your macro would be able to take a worksheet object as a parameter

and
process that object.

'This is workbook event code.
'To input this code, right click on the Excel icon on the worksheet
'(or next to the File menu if you maximise your workbooks),
'select View Code from the menu, and paste the code



--

HTH

RP
(remove nothere from the email address if mailing direct)


"Jane" wrote in message
...
I have vba code that I want to run when I open the workbook and I only
want
it to apply to sheet3, sheet5 and sheet6. Would someone know how I

need to
write this? Thanks.







Bob Phillips[_6_]

run code on opening workbook and apply code to certain sheets
 
Your macro should now look something like this

Sub colorformat(sh As Worksheet)
sh.Activate
End Sub

This is code that should be placed in a standard code module (InsertModule)
in the VBE, not within the worksheet code module.

The other code should go in the ThisWorkbook code module as I mentioned. To
be doubly sure you could change it to

Private Sub Workbook_Open()
colorformat ThisWorkbook.Worksheets("Sheet3")
colorformat ThisWorkbook.Worksheets("Sheet5")
colorformat ThisWorkbook.Worksheets("Sheet6")
End Sub

although that shouldn't be absolutely necessary as it will be the active
workbook by virtue of being opened, but it does no harm.

I hope your colorformat macro will do more later, as activating one sheet
after another doesn't have a lot of point :-).

--

HTH

RP
(remove nothere from the email address if mailing direct)


"Jane" wrote in message
...
Thank you again and even more for helping me on Sunday. My code currently
says: ThisWorkbook.Worksheets("sheet3").Activate so I have the code
currently saved under that one spreadsheet while I was testing it. Is

that
wrong? Does it need to go somewhere else? I need to put it "somewhere"

so
it knows to run on certain spreadsheets. I ran your code and changed
"myMacro" to "colorformat" which is my "sub" name but the code stopped

right
after: Private Sub Workbook_Open(). Is that wrong?

"Bob Phillips" wrote:

mymacro is the macro for your VBA code.

Your code can be in standard code module, it doesn't have to go with

this
code. The important thing is to ensue your code can handle variable
worksheet objects.

--

HTH

RP
(remove nothere from the email address if mailing direct)


"Jane" wrote in message
...
Thank you very much. Do I need to put my code with the code you gave

me
and
make it all as one? and what does "mymacro" represent? Forgive me I

am
still learning. Thanks.

"Bob Phillips" wrote:

Something like

Private Sub Workbook_Open()
Mymacro Worksheets("Sheet3")
Mymacro Worksheets("Sheet5")

Mymacro Worksheets("Sheet6")
End Sub

where your macro would be able to take a worksheet object as a

parameter
and
process that object.

'This is workbook event code.
'To input this code, right click on the Excel icon on the worksheet
'(or next to the File menu if you maximise your workbooks),
'select View Code from the menu, and paste the code



--

HTH

RP
(remove nothere from the email address if mailing direct)


"Jane" wrote in message
...
I have vba code that I want to run when I open the workbook and I

only
want
it to apply to sheet3, sheet5 and sheet6. Would someone know how I

need to
write this? Thanks.









Jane

run code on opening workbook and apply code to certain sheets
 
Thanks for the knowledge. You say you hope my colorformat vba will do more
later, as activating one sheet at a time doesn't have a lot of point. Please
help me to fix that. I am so new at this. I want it to work as efficiently
as possible but do not have the knowledge base by any means. By the way
everything seems to be working great I'm thrilled.
"Bob Phillips" wrote:

Your macro should now look something like this

Sub colorformat(sh As Worksheet)
sh.Activate
End Sub

This is code that should be placed in a standard code module (InsertModule)
in the VBE, not within the worksheet code module.

The other code should go in the ThisWorkbook code module as I mentioned. To
be doubly sure you could change it to

Private Sub Workbook_Open()
colorformat ThisWorkbook.Worksheets("Sheet3")
colorformat ThisWorkbook.Worksheets("Sheet5")
colorformat ThisWorkbook.Worksheets("Sheet6")
End Sub

although that shouldn't be absolutely necessary as it will be the active
workbook by virtue of being opened, but it does no harm.

I hope your colorformat macro will do more later, as activating one sheet
after another doesn't have a lot of point :-).

--

HTH

RP
(remove nothere from the email address if mailing direct)


"Jane" wrote in message
...
Thank you again and even more for helping me on Sunday. My code currently
says: ThisWorkbook.Worksheets("sheet3").Activate so I have the code
currently saved under that one spreadsheet while I was testing it. Is

that
wrong? Does it need to go somewhere else? I need to put it "somewhere"

so
it knows to run on certain spreadsheets. I ran your code and changed
"myMacro" to "colorformat" which is my "sub" name but the code stopped

right
after: Private Sub Workbook_Open(). Is that wrong?

"Bob Phillips" wrote:

mymacro is the macro for your VBA code.

Your code can be in standard code module, it doesn't have to go with

this
code. The important thing is to ensue your code can handle variable
worksheet objects.

--

HTH

RP
(remove nothere from the email address if mailing direct)


"Jane" wrote in message
...
Thank you very much. Do I need to put my code with the code you gave

me
and
make it all as one? and what does "mymacro" represent? Forgive me I

am
still learning. Thanks.

"Bob Phillips" wrote:

Something like

Private Sub Workbook_Open()
Mymacro Worksheets("Sheet3")
Mymacro Worksheets("Sheet5")

Mymacro Worksheets("Sheet6")
End Sub

where your macro would be able to take a worksheet object as a

parameter
and
process that object.

'This is workbook event code.
'To input this code, right click on the Excel icon on the worksheet
'(or next to the File menu if you maximise your workbooks),
'select View Code from the menu, and paste the code



--

HTH

RP
(remove nothere from the email address if mailing direct)


"Jane" wrote in message
...
I have vba code that I want to run when I open the workbook and I

only
want
it to apply to sheet3, sheet5 and sheet6. Would someone know how I
need to
write this? Thanks.










Bob Phillips[_6_]

run code on opening workbook and apply code to certain sheets
 
Jane,

I'll try to help you but you need to lead.

Why I am saying there is not much point as it stands is that activating
sheet3, then 5 then 6 can be done more simply by just activating sheet6.

So my question to you. What do you want your function to do?

--

HTH

RP
(remove nothere from the email address if mailing direct)


"Jane" wrote in message
...
Thanks for the knowledge. You say you hope my colorformat vba will do

more
later, as activating one sheet at a time doesn't have a lot of point.

Please
help me to fix that. I am so new at this. I want it to work as

efficiently
as possible but do not have the knowledge base by any means. By the way
everything seems to be working great I'm thrilled.
"Bob Phillips" wrote:

Your macro should now look something like this

Sub colorformat(sh As Worksheet)
sh.Activate
End Sub

This is code that should be placed in a standard code module

(InsertModule)
in the VBE, not within the worksheet code module.

The other code should go in the ThisWorkbook code module as I mentioned.

To
be doubly sure you could change it to

Private Sub Workbook_Open()
colorformat ThisWorkbook.Worksheets("Sheet3")
colorformat ThisWorkbook.Worksheets("Sheet5")
colorformat ThisWorkbook.Worksheets("Sheet6")
End Sub

although that shouldn't be absolutely necessary as it will be the active
workbook by virtue of being opened, but it does no harm.

I hope your colorformat macro will do more later, as activating one

sheet
after another doesn't have a lot of point :-).

--

HTH

RP
(remove nothere from the email address if mailing direct)


"Jane" wrote in message
...
Thank you again and even more for helping me on Sunday. My code

currently
says: ThisWorkbook.Worksheets("sheet3").Activate so I have the code
currently saved under that one spreadsheet while I was testing it. Is

that
wrong? Does it need to go somewhere else? I need to put it

"somewhere"
so
it knows to run on certain spreadsheets. I ran your code and changed
"myMacro" to "colorformat" which is my "sub" name but the code stopped

right
after: Private Sub Workbook_Open(). Is that wrong?

"Bob Phillips" wrote:

mymacro is the macro for your VBA code.

Your code can be in standard code module, it doesn't have to go with

this
code. The important thing is to ensue your code can handle variable
worksheet objects.

--

HTH

RP
(remove nothere from the email address if mailing direct)


"Jane" wrote in message
...
Thank you very much. Do I need to put my code with the code you

gave
me
and
make it all as one? and what does "mymacro" represent? Forgive

me I
am
still learning. Thanks.

"Bob Phillips" wrote:

Something like

Private Sub Workbook_Open()
Mymacro Worksheets("Sheet3")
Mymacro Worksheets("Sheet5")

Mymacro Worksheets("Sheet6")
End Sub

where your macro would be able to take a worksheet object as a

parameter
and
process that object.

'This is workbook event code.
'To input this code, right click on the Excel icon on the

worksheet
'(or next to the File menu if you maximise your workbooks),
'select View Code from the menu, and paste the code



--

HTH

RP
(remove nothere from the email address if mailing direct)


"Jane" wrote in message
...
I have vba code that I want to run when I open the workbook

and I
only
want
it to apply to sheet3, sheet5 and sheet6. Would someone know

how I
need to
write this? Thanks.













All times are GMT +1. The time now is 04:49 AM.

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