LinkBack Thread Tools Search this Thread Display Modes
Prev Previous Post   Next Post Next
  #6   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 422
Default Go to last row of data and delete the rest to bottom of s/sheet

Thanks Dave - I should have gone to the link as Otto suggested...
I should remember that (for next time).
Thanks,
JMay

"Dave Peterson" wrote in message
...
Debra documents this on that link:

4. Save the file. Note: In older versions of Excel,
you may have to Save, then close and re-open
the file before the used range is reset.



JMay wrote:

Otto:
After running this macro I found that you must Close the file (and

answer
"Yes" to the q Do you wish to save?) and then re-open to have the
Control-end actually goto the last-used cell. Could the Close/re-open

be
included in the original macro?
TIA,

"Otto Moehrbach" wrote in message
...
You need to search for something in a cell, not a blank cell ("*").

Here
is
a macro from Debra Dalgliesh that resets the last cell of the sheet,

rows
and columns both. HTH Otto
'This code is from Debra Dalgliesh at:
'http://www.contextures.on.ca/xlfaqApp.html#Unused
Sub DeleteUnused()
Dim myLastRow As Long
Dim myLastCol As Long
Dim wks As Worksheet
Dim dummyRng As Range
For Each wks In ActiveWorkbook.Worksheets
With wks
myLastRow = 0
myLastCol = 0
Set dummyRng = .UsedRange
On Error Resume Next
myLastRow = _
.Cells.Find("*", after:=.Cells(1), _
LookIn:=xlFormulas, lookat:=xlWhole, _
searchdirection:=xlPrevious, _
searchorder:=xlByRows).Row
myLastCol = _
.Cells.Find("*", after:=.Cells(1), _
LookIn:=xlFormulas, lookat:=xlWhole, _
searchdirection:=xlPrevious, _
searchorder:=xlByColumns).Column
On Error GoTo 0
If myLastRow * myLastCol = 0 Then
.Columns.Delete
Else
.Range(.Cells(myLastRow + 1, 1), _
.Cells(.Rows.Count, 1)).EntireRow.Delete
.Range(.Cells(1, myLastCol + 1), _
.Cells(1, .Columns.Count)).EntireColumn.Delete
End If
End With
Next wks
End Sub



"Tempy" wrote in message
...
Could somebody help me with some code to perform this.

I have a spread sheet with a varying amount of rows.

It gets updated daily and i run some code to do various things. I

need
to go down to the last row with data in and then delete the rest. I
think that when the spreed sheet is set up (by somebody else), they

set
the area as when i use some other code that i found to go to the

bottom
of data it finds more than what there is?!
The code below is what i use to see how many rows.

myRows = last
On Error Resume Next
last = ActiveSheet.Cells.Find(What:="", _
After:=[A1], _
Lookat:=xlPart, _
LookIn:=xlFormulas, _
SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious, _
MatchCase:=False).Row
On Error GoTo 0
MsgBox last

Les Stout

*** Sent via Developersdex http://www.developersdex.com ***
Don't just participate in USENET...get rewarded for it!



--

Dave Peterson



 
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
Help with rest of forumla - Delete rows based on criteria Mariann Excel Discussion (Misc queries) 4 June 10th 09 09:21 PM
how to select the first character in a cell and delete the rest Helenf Excel Worksheet Functions 4 May 14th 09 12:10 PM
how to keep the first initial of a name &delete the rest in cell mark Excel Discussion (Misc queries) 2 February 28th 07 05:35 PM
Can I lock data into few cells in sheet and clear the rest eabrown Excel Discussion (Misc queries) 1 February 15th 06 05:41 PM
Select certain rows of sheet & delete the rest Steve Wylie Excel Programming 2 January 9th 04 07:16 PM


All times are GMT +1. The time now is 06:52 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"