Looping

G

Guest

I have the following code in a macro:

For Emp = 8 To 63
Application.Goto Reference:="Name"
ActiveCell.Replace What:="Emp", Replacement:="Emp+1", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Cells.Find(What:="Emp", After:=ActiveCell, LookIn:=xlFormulas, LookAt:= _
xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext,
MatchCase:=False _
, SearchFormat:=False).Activate
Application.Goto Reference:="Wages"
Selection.Replace What:="Emp", Replacement:="Emp+1", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Application.Goto Reference:="Benefits"
Selection.Replace What:="Emp", Replacement:="Emp=+", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Application.Goto Reference:="Hours"
Selection.Replace What:="Emp", Replacement:="Emp+1", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Application.Goto Reference:="Rate"
Selection.Replace What:="Emp", Replacement:="Emp+1", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Next Emp

The value of Emp changes when I do a step through the macro, but hte value
of Emp and Emp + 1 never changes to the next incremental value. How can I
get this to loop through correctly?
Thanks!
 
I

Ivan Raiminius

Hi,

if you want to replace value Emp, then remove quotation marks (so "Emp"
should be Emp in your code). Emp is variable, "Emp" is string.

Regards,
Ivan
 
C

colofnature

Maybe I'm being dense, but I'm not really sure what you're trying to do
here - could you give some detail?
 
D

Don Guillett

I'm not quite sure what you want to do but try this idea. It goes to each
named cell and changes emp1 to emp2

Sub loopemp()
myarray = Array("name", "benefits", "wages")
On Error Resume Next

For Each i In myarray
Application.Goto i
ActiveCell.Replace "emp1", "emp2"
Next i

End Sub

if you are trying to find all cells with emp then try using FINDNEXT. there
is a good example in vba help index.
 
G

Guest

I knew I was close to getting the results I wanted. I thought maybe I had to
declate the variables or something. What an easy solution. This worked
PERFECTLY.
Thanks!!
 

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