ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Formatting via VBA (https://www.excelbanter.com/excel-programming/419768-formatting-via-vba.html)

Exceller

Formatting via VBA
 
I recorded a simple macro to change the format of a worksheet to "Accounting".

Cells.Select
Selection.NumberFormat = "_(* #,##0_);_(* (#,##0);_(* ""-""_);_(@_)"

But how do I "deselect" the page after the macro has executed? In other
words, when I created the macro I selected the entire spreadsheet, so when I
run the macro the entire worksheet remains selected after the macro runs.
What code can I put at the end of the macro so that the last cell that was
selected when the was run is reselected when it finishes. Or, if there's
better code to accomplish the reformatting of a spreadsheet that negates
having to reselect the cell I was working in I'd appreciate to have that.

Thanks.



Daniel.C[_2_]

Formatting via VBA
 
Cells.NumberFormat = "_(* #,##0_);_(* (#,##0);_(* ""-""_);_(@_)"
Daniel

I recorded a simple macro to change the format of a worksheet to
"Accounting".

Cells.Select
Selection.NumberFormat = "_(* #,##0_);_(* (#,##0);_(* ""-""_);_(@_)"

But how do I "deselect" the page after the macro has executed? In other
words, when I created the macro I selected the entire spreadsheet, so when I
run the macro the entire worksheet remains selected after the macro runs.
What code can I put at the end of the macro so that the last cell that was
selected when the was run is reselected when it finishes. Or, if there's
better code to accomplish the reformatting of a spreadsheet that negates
having to reselect the cell I was working in I'd appreciate to have that.

Thanks.




Exceller

Formatting via VBA
 
Daniel--this works perfectly. I appreciate your valuable help.


"Exceller" wrote:

I recorded a simple macro to change the format of a worksheet to "Accounting".

Cells.Select
Selection.NumberFormat = "_(* #,##0_);_(* (#,##0);_(* ""-""_);_(@_)"

But how do I "deselect" the page after the macro has executed? In other
words, when I created the macro I selected the entire spreadsheet, so when I
run the macro the entire worksheet remains selected after the macro runs.
What code can I put at the end of the macro so that the last cell that was
selected when the was run is reselected when it finishes. Or, if there's
better code to accomplish the reformatting of a spreadsheet that negates
having to reselect the cell I was working in I'd appreciate to have that.

Thanks.



Rick Rothstein

Formatting via VBA
 
For future reference... when you use the macro recorder, it sees you do
every step; hence it saw you select the cells (first step) and then apply a
format to them (second step), so it gave you two separate lines like this...

Range.Select
Selection.DoSomethingToTheSelection [=][TheSomething]

where DoSomethingToTheSelection could be a method to execute against the
selection or, as in your case, an assignment of a value to one of the
selection's properties. The point is that it is almost always possible to
"bridge" the two statements at the Select/Selection to produce a single line
command like this...

Range.DoSomethingToThisSelection [=][TheSomething]

Very rarely does VBA actually make you select the range before doing
something to it; so, if you see that construction result from the macro
recorder, you should consider performing the above "bridging" of the two
lines as shown above to see VBA will allow it (your program won't jump
around as much, so it should be more efficient).

--
Rick (MVP - Excel)


"Exceller" wrote in message
...
Daniel--this works perfectly. I appreciate your valuable help.


"Exceller" wrote:

I recorded a simple macro to change the format of a worksheet to
"Accounting".

Cells.Select
Selection.NumberFormat = "_(* #,##0_);_(* (#,##0);_(* ""-""_);_(@_)"

But how do I "deselect" the page after the macro has executed? In other
words, when I created the macro I selected the entire spreadsheet, so
when I
run the macro the entire worksheet remains selected after the macro runs.
What code can I put at the end of the macro so that the last cell that
was
selected when the was run is reselected when it finishes. Or, if there's
better code to accomplish the reformatting of a spreadsheet that negates
having to reselect the cell I was working in I'd appreciate to have that.

Thanks.





All times are GMT +1. The time now is 05:15 PM.

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