Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 2,836
Default Help with a loop please.

This did exactly what I wanted it to do. I am so happy now. Yes, you are
right JLGWhiz, the Total and Total Display was screwing me up. I didn't even
realize it before, because I was focusing on the looping issue. I've never
used the 'LookAt:=xlWhole' object before. Thanks for pointing that out!
Thanks for everything!! I can move on with my project now!!

Kind Regards,
Ryan--

--
RyGuy


"JLGWhiz" wrote:

In the locals window it shows that it does change sheets. You won't see the
sheets change because the code does not use select. Check to see if the
changes were made, if noit then make sure your criteria is correct in the
If...Then statement for the worksheet name including the spaces between RVP
the dash and the Q1.

You have another built in problem, Ryan. The words you are replacing are
repeatded in the different statements, and the code is doing exactly what it
is instructed to do. When it sees Total Display, it replaces it with Total
Display - Next Quarter, then later when it sees Total, it replacest that with
Total - Next Quarter so that the first replacement ends up looking like
"Total - Next Quarter Display - Next Quarter" because it replaced the Total
that had already been changed. You need LookAt:=xlWhole.

I ran this code with the changes and it worked ok for me with three
worksheets. So if you still have a problem, it has to be the sheet name not
registering because of structural differences.

Sub dk()
Dim sh As Worksheet
For Each sh In Sheets

If sh.Name Like "RVP - Q1*" Then

Cells.Copy
Range("A1").PasteSpecial Paste:=xlPasteValues, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
With sh.Columns(4)
.Replace What:="Total Display", _
Replacement:="Total Display - Next Quarter", LookAt:=xlWhole, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
.Replace What:="Class 1", Replacement:="Class 1 - Next Quarter", _
LookAt:=xlWhole, SearchOrder:=xlByRows, MatchCase:=False, _
SearchFormat:=False, ReplaceFormat:=False
.Replace What:="Class 2", Replacement:="Class 2 - Next Quarter", _
LookAt:=xlWhole, SearchOrder:=xlByRows, MatchCase:=False, _
SearchFormat:=False, ReplaceFormat:=False
.Replace What:="Search", Replacement:="Search - Next Quarter", _
LookAt:=xlWhole, SearchOrder:=xlByRows, MatchCase:=False, _
SearchFormat:=False, ReplaceFormat:=False
.Replace What:="Total", Replacement:="Total - Next Quarter", _
LookAt:=xlWhole, SearchOrder:=xlByRows, MatchCase:=False, _
SearchFormat:=False, ReplaceFormat:=False
End With

End If
Next sh

End Sub

"ryguy7272" wrote:

Thanks. Unfortunately, it doesn't move from one sheet to another sheet in
ThisWorkbook.Sheets

What can I do?

Thanks,
Ryan---

--
RyGuy


"JLGWhiz" wrote:

Range("D:D")
Columns("D")
Columns(4)

"ryguy7272" wrote:

Run-time error '1004':
Select method of Range class failed

...guess that would be helpful is debugging this thing...

--
RyGuy


"ryguy7272" wrote:

Thanks for the info. JLGWhiz. That makes sense, but it still doesn't work.
Now it errors on this line:
sh.Columns("D:D").Select

Any thoughts?


Thanks,
Ryan---

--
RyGuy


"Bernard Liengme" wrote:

Here is my test sub

Sub tryme()
For Each ws In Worksheets
If ws.Name Like "temp*" Then
ws.Range("A1") = "X"
End If
Next ws
End Sub

If I used Range("A1")="X" without referencing the ws varaible, the sub put X
in A1 of the active worksheet and no others. This. of course, is exacly
whyat the code would mean.

You need something like

Dim sh As Worksheet
For Each sh In Sheets
If sh.Name Like "RVP - Q1*" Then
with sh
.Cells.Select
.Selection.Copy
,,,,
next with
next sh


best wsihes
--
Bernard V Liengme
Microsoft Excel MVP
http://people.stfx.ca/bliengme
remove caps from email

"ryguy7272" wrote in message
...
For some reason, all changes occur in one single sheet. I used F8 to move
through the code and still didn't see why it's not moving from one sheet
to
another sheet. Can someone point out my error?

Dim sh As Worksheet
For Each sh In Sheets

If sh.Name Like "RVP - Q1*" Then

Cells.Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks _
:=False, Transpose:=False

Columns("D:D").Select
Selection.Replace What:="Total Display", Replacement:= _
"Total Display - Next Quarter", LookAt:=xlPart,
SearchOrder:=xlByRows, _
MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
Selection.Replace What:="Class 1", Replacement:="Class 1 - Next
Quarter", _
LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False,
SearchFormat:= _
False, ReplaceFormat:=False
Selection.Replace What:="Class 2", Replacement:="Class 2 - Next
Quarter", _
LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False,
SearchFormat:= _
False, ReplaceFormat:=False
Selection.Replace What:="Search", Replacement:="Search - Next Quarter",
_
LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False,
SearchFormat:= _
False, ReplaceFormat:=False
Selection.Replace What:="Total", Replacement:="Total - Next Quarter", _
LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False,
SearchFormat:= _
False, ReplaceFormat:=False

End If
Next sh

Thanks,
Ryan---

--
RyGuy



Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
returning back to loop check condition without completing the loop ashish128 Excel Programming 13 April 3rd 08 12:53 PM
Loop to Filter, Name Sheets. If Blank, Exit Loop ryguy7272 Excel Programming 3 February 5th 08 03:41 PM
Naming Worksheets - Loop within a loop issue klysell Excel Programming 5 March 29th 07 05:48 AM
(Complex) Loop within loop to create worksheets klysell Excel Programming 1 March 20th 07 12:03 AM
Advancing outer Loop Based on criteria of inner loop ExcelMonkey Excel Programming 1 August 15th 05 05:23 PM


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

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright ©2004-2025 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"