Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 12
Default find, delete, repeat loop

Hi,
I am trying to remove a header that shows up on the top of every page
of a text file I imported. I am working with a file with about 2000
headers and have one with 2500 headers and 5000 headers waiting for me
to finish this code.

It has been many years since I have written code.

I have recorded a macro that finds the header by finding the first word
in it and then selected a range 10 cells deep by 2 wide. It then
removes the rows. The macro works fine when I run it but I am having
trouble getting it to loop.

I keep getting and EXPECTED END SUB error when I try to run this. I
added some looping code I found in the help area. I don't know if this
is the best way to do this but I would appreciate any help. I would
really really appreciate it. Thanks, Kim

Sub headergone()
'
' headergone Macro
' This macro removes the header from the top of each page
'
' Keyboard Shortcut: Ctrl+h
'
Sub ChkFirstUntil()
counter = 0
myNum = 20
Do Until myNum = 10
myNum = myNum - 1
counter = counter + 1



Cells.Find(What:="STAT", After:=ActiveCell, LookIn:=xlFormulas,
LookAt _
:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext,
MatchCase:= _
True, SearchFormat:=False).Activate
ActiveCell.Range("A1:B10").Select
Selection.EntireRow.Delete

Loop
MsgBox "The loop made " & counter & " repetitions."
End Sub
End Sub

  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 6,953
Default find, delete, repeat loop

Sub headergone()
'
' headergone Macro
' This macro removes the header from the top of each page
'
' Keyboard Shortcut: Ctrl+h
'
Dim counter as Long
Dim rng as Range
counter = 0
Do
counter = counter + 1


set rng = Nothing
set rng = Cells.Find(What:="STAT", _
After:=ActiveCell, LookIn:=xlFormulas,
LookAt:=xlWhole, SearchOrder:=xlByRows, _
SearchDirection:=xlNext, MatchCase:=True, _
SearchFormat:=False)
if not rng is Nothing then
rng.Range("A1:B10").EntireRow.Delete
else
exit do
end if
Loop
MsgBox "The loop made " & counter & " repetitions."

End Sub

--
Regards,
Tom Ogilvy

" wrote:

Hi,
I am trying to remove a header that shows up on the top of every page
of a text file I imported. I am working with a file with about 2000
headers and have one with 2500 headers and 5000 headers waiting for me
to finish this code.

It has been many years since I have written code.

I have recorded a macro that finds the header by finding the first word
in it and then selected a range 10 cells deep by 2 wide. It then
removes the rows. The macro works fine when I run it but I am having
trouble getting it to loop.

I keep getting and EXPECTED END SUB error when I try to run this. I
added some looping code I found in the help area. I don't know if this
is the best way to do this but I would appreciate any help. I would
really really appreciate it. Thanks, Kim

Sub headergone()
'
' headergone Macro
' This macro removes the header from the top of each page
'
' Keyboard Shortcut: Ctrl+h
'
Sub ChkFirstUntil()
counter = 0
myNum = 20
Do Until myNum = 10
myNum = myNum - 1
counter = counter + 1



Cells.Find(What:="STAT", After:=ActiveCell, LookIn:=xlFormulas,
LookAt _
:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext,
MatchCase:= _
True, SearchFormat:=False).Activate
ActiveCell.Range("A1:B10").Select
Selection.EntireRow.Delete

Loop
MsgBox "The loop made " & counter & " repetitions."
End Sub
End Sub


  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 703
Default find, delete, repeat loop

You have a subroutine nested inside a subroutine. That's an invalid
structure. Maybe try removing "Sub ChkFirstUntil()" and one of the "End Sub"
statements.

" wrote:

Hi,
I am trying to remove a header that shows up on the top of every page
of a text file I imported. I am working with a file with about 2000
headers and have one with 2500 headers and 5000 headers waiting for me
to finish this code.

It has been many years since I have written code.

I have recorded a macro that finds the header by finding the first word
in it and then selected a range 10 cells deep by 2 wide. It then
removes the rows. The macro works fine when I run it but I am having
trouble getting it to loop.

I keep getting and EXPECTED END SUB error when I try to run this. I
added some looping code I found in the help area. I don't know if this
is the best way to do this but I would appreciate any help. I would
really really appreciate it. Thanks, Kim

Sub headergone()
'
' headergone Macro
' This macro removes the header from the top of each page
'
' Keyboard Shortcut: Ctrl+h
'
Sub ChkFirstUntil()
counter = 0
myNum = 20
Do Until myNum = 10
myNum = myNum - 1
counter = counter + 1



Cells.Find(What:="STAT", After:=ActiveCell, LookIn:=xlFormulas,
LookAt _
:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext,
MatchCase:= _
True, SearchFormat:=False).Activate
ActiveCell.Range("A1:B10").Select
Selection.EntireRow.Delete

Loop
MsgBox "The loop made " & counter & " repetitions."
End Sub
End Sub


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
Why can the number of iterations repeat many times as a loop?? Jorge Luis Excel Discussion (Misc queries) 0 February 1st 08 04:15 PM
Repeat keystrokes to delete character in column Graeme at Raptup Excel Worksheet Functions 5 October 4th 07 05:57 PM
need macro script - repeat to delete 2 rows BB Excel Discussion (Misc queries) 3 November 14th 06 12:00 AM
Loops to find blanks then loop to find populated Bevy Excel Programming 0 June 1st 06 04:50 PM
Excel VBA - Repeat for loop until blank rows rbelforti[_4_] Excel Programming 1 July 7th 04 10:48 PM


All times are GMT +1. The time now is 04:49 PM.

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

About Us

"It's about Microsoft Excel"