Follow along with the video below to see how to install our site as a web app on your home screen.
Note: This feature may not be available in some browsers.
Public Function Get_Filter_Criteria() As String
Dim rngFilter As Range
Dim strCriteria As String
Dim strFilter1 As String
Dim strFilter2 As String
Dim i As Integer
strCriteria = ""
Set rngFilter = ActiveCell.CurrentRegion
i = 1
'Are filters active?
If ActiveSheet.AutoFilterMode = True Then
'Loop through the filters, appending the criteria
Do Until i = rngFilter.Worksheet.AutoFilter.Filters.Count + 1
'Is the filter on?
If rngFilter.Worksheet.AutoFilter.Filters(i).On = True Then
'Is there more than one criteria item for this filter?
If (rngFilter.Worksheet.AutoFilter.Filters(i)[color blue].Operator[/color blue] = xlOr Or rngFilter.Worksheet.AutoFilter.Filters(i)[color blue].Operator[/color blue] = xlAnd) Then
'If so, add both criteria items to the output string
strFilter1 = Right(rngFilter.Worksheet.AutoFilter.Filters(i).Criteria1, Len(rngFilter.Worksheet.AutoFilter.Filters(i).Criteria1) - 1)
strFilter2 = Right(rngFilter.Worksheet.AutoFilter.Filters(i).Criteria2, Len(rngFilter.Worksheet.AutoFilter.Filters(i).Criteria2) - 1)
'Row 8 is the header row for this sheet, amend as necessary
strCriteria = strCriteria & Cells(8, i).Value & " = " & strFilter1 & "/" & strFilter2 & " : "
Debug.Print "strCriteria = " & strCriteria
Else
'Just add Criteria1
strFilter1 = Right(rngFilter.Worksheet.AutoFilter.Filters(i).Criteria1, Len(rngFilter.Worksheet.AutoFilter.Filters(i).Criteria1) - 1)
'Row 8 is the header row for this sheet, amend as necessary
strCriteria = strCriteria & Cells(8, i).Value & " = " & strFilter1 & " : "
Debug.Print "strCriteria = " & strCriteria
End If
Else
End If
i = i + 1
Loop
End If
'Trim the output string to remove the extra colon
If Len(strCriteria) > 0 Then
Get_Filter_Criteria = Left(Trim(strCriteria), Len(Trim(strCriteria)) - 2)
Else
End If
End Function
Private Sub Workbook_SheetCalculate(ByVal Sh As Object)
If ActiveSheet.Name <> "MySheetName" Then Exit Sub
Range("MyCellRef").Value = Get_Filter_Criteria()
End Sub