• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 427
  • Last Modified:

Repeat an Excel macro multiple times

I have the following macro in an Excel 2010 worksheet.  I need to repeat it about 25,000 times.  I know there's a loop feature that can be used, but I don't know enough about Visual Basic to get it to work.  And everything I find online is GREEK to me.  Can someone help me with the correct coding to get this done?  It would be greatly appreciated.  Thanks so much!!!!

Sub Move_Text3()
'
' Move_Text3 Macro
'

'
    ActiveCell.Range("A1:G1").Select
    Selection.Cut
    ActiveCell.Offset(-1, 8).Range("A1").Select
    ActiveSheet.Paste
    ActiveCell.Offset(3, -8).Range("A1").Select
End Sub
0
esu4236
Asked:
esu4236
  • 4
  • 3
  • 2
1 Solution
 
Martin LissOlder than dirtCommented:
Dim lngCount As Long

For lngCount = 1 to 25000

'Macro code

Loop
0
 
esu4236Author Commented:
I got a compile error:  Loop without Do.   ????????????  Here's the code now:

Sub Move_Text3()
'
' Move_Text3 Macro
'

'
Dim lngCount As Long

For lngCount = 1 To 5

    ActiveCell.Range("A1:G1").Select
    Selection.Cut
    ActiveCell.Offset(-1, 8).Range("A1").Select
    ActiveSheet.Paste
    ActiveCell.Offset(3, -8).Range("A1").Select
Loop

End Sub
0
 
Martin LissOlder than dirtCommented:
I'm sorry, it's 'Next' not 'Loop'.
0
Cloud Class® Course: SQL Server Core 2016

This course will introduce you to SQL Server Core 2016, as well as teach you about SSMS, data tools, installation, server configuration, using Management Studio, and writing and executing queries.

 
Martin LissOlder than dirtCommented:
What do you expect to have happen if you run that code more than once?
0
 
esu4236Author Commented:
I want it to go through and highlight some cells and then move them to the appropriate row.   There are lots of rows that need this done.
0
 
tdlewisCommented:
As written, a loop would cause this code will move seven cells from every other row up one row (from where it started) and over eight cells.

For example, looping through that code three times would have this effect:
loop three timesIf that's truly what you need then adding the For loop (ending it with Next) as suggested by @MartinLiss will work.

If that's not what you need then describe what you're hoping to have happen.
0
 
esu4236Author Commented:
Worked like a charm!!!!!!!!!  Thanks so much!!  I am amazed at how people know Visual Basic.  Wish I knew it much better than I do.  Thanks again.  Happy New Year!!!!!!!!!!!!
0
 
tdlewisCommented:
@esu4236, the best way to learn VBA is to keep using it. Also, read the questions and answers on this site and you will learn a ton about interesting ways that other people are using it. I've learned a lot reading answers from other experts.
0
 
Martin LissOlder than dirtCommented:
Glad I was able to help.

Marty - MVP 2009 to 2012
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Cloud Class® Course: SQL Server Core 2016

This course will introduce you to SQL Server Core 2016, as well as teach you about SSMS, data tools, installation, server configuration, using Management Studio, and writing and executing queries.

  • 4
  • 3
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now