View Single Post
  #5   Report Post  
Posted to microsoft.public.excel.programming
Bill Case Bill Case is offline
external usenet poster
 
Posts: 47
Default Making a collection of EntireRows for copying and then deletin

Thanks Jim;

It looks like your suggestion will work. I must misunderstand the use of
the 'Set' command. I will read up on that; it looks important.

Your way sure looks better.

Regards Bill

"Jim Thomlinson" wrote:

This should be close. It looks in Column A of Sheet 1 for X's and if there
are any copies them to cell A2 on sheet 2. It then deletes all of the X rows
found on sheet1. You will need to change the set statements at the beginning
of this code but that should be about it...

Public Sub FindStuff()
Dim wksFrom As Worksheet
Dim rngToSearch As Range
Dim rngFound As Range
Dim rngFoundAll As Range
Dim rngDestination As Range
Dim strFirstAddress As String

Set rngDestination = Sheets("Sheet2").Range("A2")
Set wksFrom = Sheets("Sheet1")
Set rngToSearch = wksFrom.Range("A:A")
Set rngFound = rngToSearch.Find(What:="X", _
LookAt:=xlWhole, _
LookIn:=xlFormulas, _
MatchCase:=False)
If rngFound Is Nothing Then
MsgBox "Sorry no X's were found."
Else
Set rngFoundAll = rngFound.EntireRow
strFirstAddress = rngFound.Address
Do
Set rngFoundAll = Union(rngFound.EntireRow, rngFoundAll)
Set rngFound = rngToSearch.FindNext(After:=rngFound)
Loop Until rngFound.Address = strFirstAddress
rngFoundAll.Copy rngDestination
rngFoundAll.Delete
End If
End Sub
--
HTH...

Jim Thomlinson