VBA Coding to select cell under Headings when using filter

SAMCRO2014

Board Regular
Joined
Sep 3, 2015
Messages
145
I am using a filter to show all "BB" transactions and delete the rest of the rows that are not "BB". Here is what I recorded when I did it:

'Set autofilter on Column E for "BB" and delete all other rows
Range("A1").Select
Sheets("PPDR_BB").Select
Rows("1:1").Select
Selection.AutoFilter
ActiveSheet.Range("$A$1:$T$15865").AutoFilter Field:=5, Criteria1:=Array( _
"#N/A", "Overtime", "PAR", "Premiums", "Regular"), Operator:=xlFilterValues
Range("A634").Select
Range(Selection, Selection.End(xlToRight)).Select
Range("A634:P634").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.EntireRow.Delete
ActiveSheet.Range("$A$1:$T$633").AutoFilter Field:=5

My question is how can I adjust the coding to delete the rows under the headings that I do not require as the starting row will be variable.

Thanks
 

DanteAmor

Well-known Member
Joined
Dec 3, 2018
Messages
8,744
Office Version
2007
Platform
Windows
Try this

Code:
Sub test()
  Dim sh As Worksheet, lr As Long
  Sheets("PPDR_BB").Select
  Set sh = ActiveSheet
  If sh.AutoFilterMode Then sh.AutoFilterMode = False
  lr = sh.Range("E" & Rows.Count).End(xlUp).Row
  sh.Range("A1:T" & lr).AutoFilter Field:=5, Criteria1:=Array( _
    "#N/A", "Overtime", "PAR", "Premiums", "Regular"), Operator:=xlFilterValues
  sh.AutoFilter.Range.Offset(1).EntireRow.Delete
  sh.ShowAllData
End Sub
 

SAMCRO2014

Board Regular
Joined
Sep 3, 2015
Messages
145
Try this

Code:
Sub test()
  Dim sh As Worksheet, lr As Long
  Sheets("PPDR_BB").Select
  Set sh = ActiveSheet
  If sh.AutoFilterMode Then sh.AutoFilterMode = False
  lr = sh.Range("E" & Rows.Count).End(xlUp).Row
  sh.Range("A1:T" & lr).AutoFilter Field:=5, Criteria1:=Array( _
    "#N/A", "Overtime", "PAR", "Premiums", "Regular"), Operator:=xlFilterValues
  sh.AutoFilter.Range.Offset(1).EntireRow.Delete
  sh.ShowAllData
End Sub
I am getting a compile Error:

Block If without End if. I have tried putting the end if in several places with no success.
 

DanteAmor

Well-known Member
Joined
Dec 3, 2018
Messages
8,744
Office Version
2007
Platform
Windows
Did you copy complete the macro of post #2 ?

Did you modify some of the original macro?
 

DanteAmor

Well-known Member
Joined
Dec 3, 2018
Messages
8,744
Office Version
2007
Platform
Windows
I'm glad to help you. Thanks for the feedback.
 

Forum statistics

Threads
1,081,693
Messages
5,360,658
Members
400,592
Latest member
katekoz

Some videos you may like

This Week's Hot Topics

  • VBA (Userform)
    Hi All, I just would like to know why my code isn't working. Here is my VBA code: [CODE=vba]Private Sub OKButton_Click() Dim i As Integer...
  • List box that changes fill color
    Hello, I have gone through so many pages trying to figure this out. I have a 2020 calendar that depending on the day needs to have a certain...
  • Remove duplicates and retain one. Cross-linked cases
    Hi all I ran out of google keywords to use and still couldn't find a reference how to achieve the results of a single count. It would be great if...
  • VBA Copy and Paste With Duplicates
    Hello All, I'm in need of some input. My VBA skills are sub-par at best. I've assembled this code from basic research and it works but is...
  • Macro
    is it possible for a macro to run if the active cell value is different to the value above it
  • IF DATE and TIME
    I currently use this to check if date has passed but i also need to set a time on it too. Is it possible? [CODE=vba]=IF(B:B>TODAY(),"Not...
Top