Difference between revisions of "Excel Filter"

From AutoIt Wiki
Jump to navigation Jump to search
m
 
Line 1: Line 1:
{{WIP}}
+
== Filter functions ==
== Set filter ==
+
Use one of the following functions to work with filters:
...
+
* '''_Excel_FilterGet:''' Returns a list of set filters
 +
* '''_Excel_FilterSet:''' Sets/unsets filter definitions and filters the range
  
 
== Retrieve all filtered rows ==
 
== Retrieve all filtered rows ==

Latest revision as of 22:06, 1 February 2021

Filter functions

Use one of the following functions to work with filters:

  • _Excel_FilterGet: Returns a list of set filters
  • _Excel_FilterSet: Sets/unsets filter definitions and filters the range

Retrieve all filtered rows

To retrieve all rows of a filtered range you need to work with Areas. An Area consists of one or multiple Ranges which you need to process in a loop. The following example returns an array with all visible rows.

$oRange = $oWorkbook.ActiveSheet.Usedrange.SpecialCells($xlCellTypeVisible)
Local $aResult[1][$oRange.columns.Count], $aContent
; Read the data of all Ranges in the Area and concatenate the returned arrays.
For $oArea In $oRange.Areas
    $aContent = _Excel_RangeRead($oWorkbook, Default, $oArea, Default, True)
    _ArrayConcatenate($aResult, $aContent)
Next