Thread
:
macro to delete the last value in each column
View Single Post
#
5
Posted to microsoft.public.excel.worksheet.functions
Don Guillett
external usenet poster
Posts: 10,124
macro to delete the last value in each column
Why are you SELECTING? How do you know row 1 is the longest column?
lc = Cells.Find(what:="*", _
after:=Cells(1, 1), searchorder:=xlByColumns, _
searchdirection:=xlPrevious).Column
--
Don Guillett
Microsoft MVP Excel
SalesAid Software
"Mike H" wrote in message
...
try
Sub marine()
Dim LastColumn As Long
With ActiveSheet
LastColumn = .Range("A1").SpecialCells(xlCellTypeLastCell).Colu mn
End With
For x = 1 To LastColumn
Columns(x).Select
ActiveCell.Offset(65535, 0).End(xlUp).Select
If ActiveCell.Value (ActiveCell.Offset(-1, 0).Value * 0.9) Then _
ActiveCell.Value = ""
Next
End Sub
Right ckick sheet tab view code and paste in
Mike
"Don Guillett" wrote:
Be careful about running this twice.
Sub deletelastiflessthan90()
For i = 1 To 36' chg to suit
lr = Cells(Rows.Count, i).End(xlUp).Row
If Cells(lr - 1, i) < 0.9 * Cells(lr, i) Then Cells(lr, i).Clear
Next i
End Sub
--
Don Guillett
Microsoft MVP Excel
SalesAid Software
"z.entropic" wrote in message
...
My worksheets have dozens of columns, each with up to a few thousand
rows.
Both enumber of columns and rows varies from one data set tp another.
I'd like to have a macro that would delete the last value in each
column,
but only if it's less than 90% of the penultimate value in that column.
Obviously, simply recording a macro with a Ctrl-Down key sequence in
each
column will not work as the the last value is recorded as a static
address,
but maybe using the OFFSET function would...
Help, please...
z.entropic
Reply With Quote
Don Guillett
View Public Profile
Find all posts by Don Guillett