+ Reply to Thread
Results 1 to 5 of 5

deleting unneeded rows

  1. #1
    Forum Contributor
    Join Date
    12-04-2003
    Location
    Burrton, Kansas USA
    MS-Off Ver
    2003
    Posts
    162

    deleting unneeded rows

    Hi!
    I want to delete all rows that do not contain the numbers 1, 2, 3 or 4 in column A. (some column A cells have letters and some are blank these are the ones I want to delete) How can I do this with a macro?
    Thanks!!

  2. #2
    Ron de Bruin
    Guest

    Re: deleting unneeded rows

    You can try this Brian

    Sub Example1()
    Dim Firstrow As Long
    Dim Lastrow As Long
    Dim Lrow As Long
    Dim CalcMode As Long
    Dim ViewMode As Long

    With Application
    CalcMode = .Calculation
    .Calculation = xlCalculationManual
    .ScreenUpdating = False
    End With

    ViewMode = ActiveWindow.View
    ActiveWindow.View = xlNormalView

    Firstrow = ActiveSheet.UsedRange.Cells(1).Row
    Lastrow = ActiveSheet.UsedRange.Rows.Count + Firstrow - 1

    With ActiveSheet
    .DisplayPageBreaks = False
    For Lrow = Lastrow To Firstrow Step -1

    If IsError(.Cells(Lrow, "A").Value) Then
    'Do nothing, This avoid a error if there is a error in the cell

    ElseIf .Cells(Lrow, "A").Value <> "1" And _
    .Cells(Lrow, "A").Value <> "2" And _
    .Cells(Lrow, "A").Value <> "3" And _
    .Cells(Lrow, "A").Value <> "4" Then .Rows(Lrow).Delete

    End If
    Next
    End With

    ActiveWindow.View = ViewMode
    With Application
    .ScreenUpdating = True
    .Calculation = CalcMode
    End With

    End Sub

    --
    Regards Ron de Bruin
    http://www.rondebruin.nl


    "Brian Matlack" <[email protected]> wrote in message
    news:[email protected]...
    >
    > Hi!
    > I want to delete all rows that do not contain the numbers 1, 2, 3 or 4
    > in column A. (some column A cells have letters and some are blank these
    > are the ones I want to delete) How can I do this with a macro?
    > Thanks!!
    >
    >
    > --
    > Brian Matlack
    > ------------------------------------------------------------------------
    > Brian Matlack's Profile: http://www.excelforum.com/member.php...fo&userid=3508
    > View this thread: http://www.excelforum.com/showthread...hreadid=524463
    >




  3. #3
    Tom Ogilvy
    Guest

    RE: deleting unneeded rows

    Dim rng as Range, i as Long, lastrow as Long
    On error resume next
    set rng = Columns(1).Specialcells(xlblanks)
    rng.EntireRow.Delete
    set rng = columns(1).Specialcells(xlConstants,xlTextValues)
    rng.Entirerow.Delete
    On error go 0
    lastrow = cells(rows.count,1).End(xlup).row
    for i = lastrow to 1 step -1
    set cell = cells(i,1)
    if isnumeric(cell) then
    if cell>4 or cell < 1 then
    rows(i).Delete
    end if
    else
    rows(i).delete
    end if
    Next

    Untested pseudocode.
    --
    Regards,
    Tom Ogilvy



    "Brian Matlack" wrote:

    >
    > Hi!
    > I want to delete all rows that do not contain the numbers 1, 2, 3 or 4
    > in column A. (some column A cells have letters and some are blank these
    > are the ones I want to delete) How can I do this with a macro?
    > Thanks!!
    >
    >
    > --
    > Brian Matlack
    > ------------------------------------------------------------------------
    > Brian Matlack's Profile: http://www.excelforum.com/member.php...fo&userid=3508
    > View this thread: http://www.excelforum.com/showthread...hreadid=524463
    >
    >


  4. #4
    Forum Contributor
    Join Date
    12-04-2003
    Location
    Burrton, Kansas USA
    MS-Off Ver
    2003
    Posts
    162
    Quote Originally Posted by Ron de Bruin
    You can try this Brian

    Sub Example1()
    Dim Firstrow As Long
    Dim Lastrow As Long
    Dim Lrow As Long
    Dim CalcMode As Long
    Dim ViewMode As Long

    With Application
    CalcMode = .Calculation
    .Calculation = xlCalculationManual
    .ScreenUpdating = False
    End With

    ViewMode = ActiveWindow.View
    ActiveWindow.View = xlNormalView

    Firstrow = ActiveSheet.UsedRange.Cells(1).Row
    Lastrow = ActiveSheet.UsedRange.Rows.Count + Firstrow - 1

    With ActiveSheet
    .DisplayPageBreaks = False
    For Lrow = Lastrow To Firstrow Step -1

    If IsError(.Cells(Lrow, "A").Value) Then
    'Do nothing, This avoid a error if there is a error in the cell

    ElseIf .Cells(Lrow, "A").Value <> "1" And _
    .Cells(Lrow, "A").Value <> "2" And _
    .Cells(Lrow, "A").Value <> "3" And _
    .Cells(Lrow, "A").Value <> "4" Then .Rows(Lrow).Delete

    End If
    Next
    End With

    ActiveWindow.View = ViewMode
    With Application
    .ScreenUpdating = True
    .Calculation = CalcMode
    End With

    End Sub

    --
    Regards Ron de Bruin
    http://www.rondebruin.nl

    "Brian Matlack" <[email protected]> wrote in message
    news:[email protected]...
    >
    > Hi!
    > I want to delete all rows that do not contain the numbers 1, 2, 3 or 4
    > in column A. (some column A cells have letters and some are blank these
    > are the ones I want to delete) How can I do this with a macro?
    > Thanks!!
    >
    >
    > --
    > Brian Matlack
    > ------------------------------------------------------------------------
    > Brian Matlack's Profile: http://www.excelforum.com/member.php...fo&userid=3508
    > View this thread: http://www.excelforum.com/showthread...hreadid=524463
    >
    Thanks Ron this works GREAT!!

  5. #5
    Forum Contributor
    Join Date
    12-04-2003
    Location
    Burrton, Kansas USA
    MS-Off Ver
    2003
    Posts
    162
    Quote Originally Posted by Tom Ogilvy
    Dim rng as Range, i as Long, lastrow as Long
    On error resume next
    set rng = Columns(1).Specialcells(xlblanks)
    rng.EntireRow.Delete
    set rng = columns(1).Specialcells(xlConstants,xlTextValues)
    rng.Entirerow.Delete
    On error go 0
    lastrow = cells(rows.count,1).End(xlup).row
    for i = lastrow to 1 step -1
    set cell = cells(i,1)
    if isnumeric(cell) then
    if cell>4 or cell < 1 then
    rows(i).Delete
    end if
    else
    rows(i).delete
    end if
    Next

    Untested pseudocode.
    --
    Regards,
    Tom Ogilvy



    "Brian Matlack" wrote:

    >
    > Hi!
    > I want to delete all rows that do not contain the numbers 1, 2, 3 or 4
    > in column A. (some column A cells have letters and some are blank these
    > are the ones I want to delete) How can I do this with a macro?
    > Thanks!!
    >
    >
    > --
    > Brian Matlack
    > ------------------------------------------------------------------------
    > Brian Matlack's Profile: http://www.excelforum.com/member.php...fo&userid=3508
    > View this thread: http://www.excelforum.com/showthread...hreadid=524463
    >
    >
    Thanks Tom this one works Great also!!

+ Reply to Thread

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts

Search Engine Friendly URLs by vBSEO 3.6.0 RC 1