Using AdvancedFilter on range of data
Is there a particular reason you want to use code for this? The
Autofilter can also to 2 criteria in the way you need and therefore
seems like an easier way to get the result you need?
Regardless I think your questions will be answered if you record a
macro and use the advanced filter menu to get what you are looking for.
The criteria range will need to include three of rows, one for the
field name and two for each of the criteria you are interested in
"0000" and blank (may need to be a zero lengthed string). I believe
these cells can not be a formula. If you are only interested in a
criteria based on one field then the criteria range only needs to be
one column wide.
The data range should include the field names (or header row).
Hope this helps.
Connie wrote:
I have a sheet in my spreadsheet which contains employee data. Each
row of data represents an employee, and there is a header line. I want
to use an advanced filter to determine the employees for whom the Tech
No (column 4) is either blank or equal to "0000". Data begins on row 9
as there are headers on the page. The Tech No is a text field as there
could be leading zeroes in the number. I am using the following code
to determine the range of data for which I want to set the criteria (D9
through end of records). How do I set an advanced filter to select the
rows in which column 4 is either blank or equal to "0000"? Once I have
the filter set, I will be copying all the rows meeting the criteria to
another sheet in the workbook. Any help would be appreciated. Connie
Private Sub Filter_Employee_Data_Click()
Dim sh As Worksheet
Dim rng As Range
Set sh = Worksheets("Compiled Totals")
sh.Select
Set rng = sh.Range(sh.Cells(9, "D"), _
sh.Cells(sh.Rows.Count, "D").End(xlUp))
Sheets("Compiled Totals").Range(rng.Address).Select
End Sub
|