#1   Report Post  
Posted to microsoft.public.excel.misc
external usenet poster
 
Posts: 23
Default creating a loop

I need to make this macro loop until it has went through all data in column
'A'. THe macro works as it is but I have to run it over and over until
complete.

Thanks in advance,




Sub Delete()
Dim Range1 As Range
Dim Range2 As Range


Set Range1 = Cells.Find(what:="*** NO OPE") 'you can fill in the conditions
Set Range2 = Cells.Find(what:="*** NO SAL")

Range(Range1.EntireRow, Range2.EntireRow).Delete
'Then to move to the cell above resultsSet Range2 = Range2.Offset(0, 0)
'Clears cells




End Sub
--
Jake
  #2   Report Post  
Posted to microsoft.public.excel.misc
external usenet poster
 
Posts: 2,420
Default creating a loop

How does this differ from your post yesterday at 22:07 which I responded to
then?

--
__________________________________
HTH

Bob

"JakeShipley2008" wrote in
message ...
I need to make this macro loop until it has went through all data in column
'A'. THe macro works as it is but I have to run it over and over until
complete.

Thanks in advance,




Sub Delete()
Dim Range1 As Range
Dim Range2 As Range


Set Range1 = Cells.Find(what:="*** NO OPE") 'you can fill in the
conditions
Set Range2 = Cells.Find(what:="*** NO SAL")

Range(Range1.EntireRow, Range2.EntireRow).Delete
'Then to move to the cell above resultsSet Range2 = Range2.Offset(0, 0)
'Clears cells




End Sub
--
Jake



  #3   Report Post  
Posted to microsoft.public.excel.misc
external usenet poster
 
Posts: 35,218
Default creating a loop

This worked for me:

Option Explicit
Sub Delete()
Dim Range1 As Range
Dim Range2 As Range

With Worksheets("sheet1")
With .Range("A:A")
Do
Set Range1 = .Cells.Find(what:="~*~*~* NO OPE", _
after:=.Cells(.Cells.Count), _
LookIn:=xlValues, _
lookat:=xlPart, _
searchorder:=xlByRows, _
searchdirection:=xlNext, _
MatchCase:=False)

If Range1 Is Nothing Then
'done!
Exit Do
Else
Set Range2 = .Cells.Find(what:="~*~*~* NO SAL", _
after:=Range1, _
LookIn:=xlValues, _
lookat:=xlPart, _
searchorder:=xlByRows, _
searchdirection:=xlNext, _
MatchCase:=False)

If Range2 Is Nothing Then
'done
Exit Do
Else
.Range(Range1, Range2).EntireRow.Delete
End If
End If
Loop
End With
End With

End Sub

I changed the *** to ~*~*~* to look for real asterisks--not wildcards.

And if there isn't a pair (top and bottom), then I don't delete anything.

JakeShipley2008 wrote:

I need to make this macro loop until it has went through all data in column
'A'. THe macro works as it is but I have to run it over and over until
complete.

Thanks in advance,

Sub Delete()
Dim Range1 As Range
Dim Range2 As Range

Set Range1 = Cells.Find(what:="*** NO OPE") 'you can fill in the conditions
Set Range2 = Cells.Find(what:="*** NO SAL")

Range(Range1.EntireRow, Range2.EntireRow).Delete
'Then to move to the cell above resultsSet Range2 = Range2.Offset(0, 0)
'Clears cells

End Sub
--
Jake


--

Dave Peterson
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
Creating a loop JakeShipley2008 Excel Discussion (Misc queries) 1 September 8th 08 10:26 PM
How to loop saman110 via OfficeKB.com Excel Discussion (Misc queries) 4 July 25th 07 01:09 AM
Need help creating Loop Jenny B. Excel Discussion (Misc queries) 3 February 14th 07 11:26 PM
vba loop Jackie Excel Discussion (Misc queries) 4 February 28th 06 04:20 AM
Next w/o For If/Then Loop littlegreenmen1 Excel Discussion (Misc queries) 5 June 9th 05 05:28 PM


All times are GMT +1. The time now is 11:27 AM.

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"