ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   How to repeat a macro (https://www.excelbanter.com/excel-programming/366074-how-repeat-macro.html)

Leon

How to repeat a macro
 
I have a macro that looks like this:

ActiveCell.Offset(2, 0).Range("A1").Select
Selection.Cut Destination:=ActiveCell.Offset(-2, 1).Range("A1")
ActiveCell.Offset(2, 0).Range("A1").Select
Selection.Cut Destination:=ActiveCell.Offset(-4, 2).Range("A1")
ActiveCell.Offset(2, 0).Range("A1").Select
Selection.Cut Destination:=ActiveCell.Offset(-6, 3).Range("A1")
ActiveCell.Offset(-5, 0).Rows("1:8").EntireRow.Select
Selection.Delete Shift:=xlUp
ActiveCell.Offset(0, 2).Range("A1").Select

I'd like to have Excel repeat the macro for as many entries there are on the
spreadsheet (this macro being valid onl for one entry). Right now I do it
manually by pressing a shortcut for as long as it not done.

Any help will be gratefully appreciated.


davesexcel[_119_]

How to repeat a macro
 

range("A1").select
do until selection.value=""
'your code
selection.offset(1,0).select
loop


--
davesexcel


------------------------------------------------------------------------
davesexcel's Profile: http://www.excelforum.com/member.php...o&userid=31708
View this thread: http://www.excelforum.com/showthread...hreadid=557698


Tim Marsh

How to repeat a macro
 
I don't know if its the best way but you could try the following (which
presumes that the you want to carry on until the active cell is empty): -

sub test()
Dim numcheck
numcheck = ActiveCell.Value
Do Until numcheck = ""

'<== YOUR CODE HER ==

ActiveCell.Offset(1, 0).Select '<== or whatever your offset is
numcheck = ActiveCell.Value
Loop
end sub

hope this helps,

Tim


"Leon" wrote in message
...
I have a macro that looks like this:

ActiveCell.Offset(2, 0).Range("A1").Select
Selection.Cut Destination:=ActiveCell.Offset(-2, 1).Range("A1")
ActiveCell.Offset(2, 0).Range("A1").Select
Selection.Cut Destination:=ActiveCell.Offset(-4, 2).Range("A1")
ActiveCell.Offset(2, 0).Range("A1").Select
Selection.Cut Destination:=ActiveCell.Offset(-6, 3).Range("A1")
ActiveCell.Offset(-5, 0).Rows("1:8").EntireRow.Select
Selection.Delete Shift:=xlUp
ActiveCell.Offset(0, 2).Range("A1").Select

I'd like to have Excel repeat the macro for as many entries there are on
the
spreadsheet (this macro being valid onl for one entry). Right now I do it
manually by pressing a shortcut for as long as it not done.

Any help will be gratefully appreciated.




Leon

How to repeat a macro
 
Tim,
You're going to think my question is dumb
but what does "Do Until numcheck = """
what do I have to replace """" by

Sorry I'm a beginner !!

"Tim Marsh" wrote:

I don't know if its the best way but you could try the following (which
presumes that the you want to carry on until the active cell is empty): -

sub test()
Dim numcheck
numcheck = ActiveCell.Value
Do Until numcheck = ""

'<== YOUR CODE HER ==

ActiveCell.Offset(1, 0).Select '<== or whatever your offset is
numcheck = ActiveCell.Value
Loop
end sub

hope this helps,

Tim


"Leon" wrote in message
...
I have a macro that looks like this:

ActiveCell.Offset(2, 0).Range("A1").Select
Selection.Cut Destination:=ActiveCell.Offset(-2, 1).Range("A1")
ActiveCell.Offset(2, 0).Range("A1").Select
Selection.Cut Destination:=ActiveCell.Offset(-4, 2).Range("A1")
ActiveCell.Offset(2, 0).Range("A1").Select
Selection.Cut Destination:=ActiveCell.Offset(-6, 3).Range("A1")
ActiveCell.Offset(-5, 0).Rows("1:8").EntireRow.Select
Selection.Delete Shift:=xlUp
ActiveCell.Offset(0, 2).Range("A1").Select

I'd like to have Excel repeat the macro for as many entries there are on
the
spreadsheet (this macro being valid onl for one entry). Right now I do it
manually by pressing a shortcut for as long as it not done.

Any help will be gratefully appreciated.





Tim Marsh

How to repeat a macro
 
there are no dumb questions (except the ones i ask)!

this is the same as davesexcel's route (except his would always refer to the
selected cell, whereas you could use mine to refer to something else if that
were relevant).

the 'Do Until numcheck = ""' statement just means that you keep on
processing the loop until you get to a blank cell ie, the contents of active
cell (that you have just scrolled to) = "" (ie, nothing in the cell)

hth,

Tim

"Leon" wrote in message
...
Tim,
You're going to think my question is dumb
but what does "Do Until numcheck = """
what do I have to replace """" by

Sorry I'm a beginner !!

"Tim Marsh" wrote:

I don't know if its the best way but you could try the following (which
presumes that the you want to carry on until the active cell is empty): -

sub test()
Dim numcheck
numcheck = ActiveCell.Value
Do Until numcheck = ""

'<== YOUR CODE HER ==

ActiveCell.Offset(1, 0).Select '<== or whatever your offset is
numcheck = ActiveCell.Value
Loop
end sub

hope this helps,

Tim


"Leon" wrote in message
...
I have a macro that looks like this:

ActiveCell.Offset(2, 0).Range("A1").Select
Selection.Cut Destination:=ActiveCell.Offset(-2, 1).Range("A1")
ActiveCell.Offset(2, 0).Range("A1").Select
Selection.Cut Destination:=ActiveCell.Offset(-4, 2).Range("A1")
ActiveCell.Offset(2, 0).Range("A1").Select
Selection.Cut Destination:=ActiveCell.Offset(-6, 3).Range("A1")
ActiveCell.Offset(-5, 0).Rows("1:8").EntireRow.Select
Selection.Delete Shift:=xlUp
ActiveCell.Offset(0, 2).Range("A1").Select

I'd like to have Excel repeat the macro for as many entries there are
on
the
spreadsheet (this macro being valid onl for one entry). Right now I do
it
manually by pressing a shortcut for as long as it not done.

Any help will be gratefully appreciated.








All times are GMT +1. The time now is 03:37 PM.

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