Retourne la liste des filtres installées
#include <Excel.au3>
_Excel_FilterGet ( $oWorkbook [, $vWorksheet = Default] )
$oWorkbook | Objet classeur Excel |
$vWorksheet | [optionnel] Nom, index ou objet de feuille de calcul filtré. Si la valeur est le mot-clé Default, la feuille active sera sélectionnée |
Succès: | Retourne un tableau à deux dimensions indexé à partir de zéro avec les informations suivantes: 0 - On si un filtre est défini pour cette colonne 1 - Nombre de zones (collection de plages) dont se compose la colonne filtrée 2 - Critères de filtrage 1. Un tableau de chaînes est retourné en tant que chaîne séparée par des "|" 3 - Critères de filtrage 2. Un tableau de chaînes est retourné en tant que chaîne séparée par des "|" 4 - Une valeur XlAutoFilterOperator qui représente l'opérateur qui associe les deux critères de filtre 5 - Objet Range pour lequel les filtres ont été installés 6 - Nombre d'enregistrements visibles dans la plage filtrée (y compris la ligne avec la flèche du filtre) |
Échec: | Retourne 0 et définit @error <> 0. |
@error: | 1 - $oWorkbook n'est pas un objet ou n'est pas un objet classeur 2 - Le nom ou l'index $vWorksheet n'est pas valide ou $vWorksheet n'est pas un objet feuille de calcul. @extended contient le code d'erreur COM 3 - Pas de filtre trouvé |
#include <Array.au3> #include <Excel.au3> #include <MsgBoxConstants.au3> ; Crée un objet Excel et ouvre un classeur Local $oExcel = _Excel_Open() If @error Then Exit MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_FilterGet-Exemple", "Erreur lors de la création de l'objet Excel." & @CRLF & "@error = " & @error & ", @extended = " & @extended) Local $oWorkbook = _Excel_BookOpen($oExcel, @ScriptDir & "\Extras\_Excel1.xls", True) If @error Then MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_FilterGet-Exemple", "Erreur lors de l'ouverture du classeur '" & @ScriptDir & "\Extras\_Excel1.xls'." & @CRLF & "@error = " & @error & ", @extended = " & @extended) _Excel_Close($oExcel) Exit EndIf ; Installe les deux filtres _Excel_FilterSet($oWorkbook, Default, "A:E", 3, "<610") If @error Then Exit MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_FilterGet-Exemple", "Erreur lors du filtrage des données." & @CRLF & "@error = " & @error & ", @extended = " & @extended) Local $aShow[] = ["20", "40", "60"] _Excel_FilterSet($oWorkbook, Default, "A:E", 2, $aShow, $xlFilterValues) If @error Then Exit MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_FilterGet-Exemple", "Erreur lors du filtrage des données." & @CRLF & "@error = " & @error & ", @extended = " & @extended) MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_FilterGet-Exemple", "Filters set:" & @CRLF & " Colonne B: valeurs = 20, 40 or 60." & @CRLF & " Colonne C: valeurs <610.") ; ***************************************************************************** ; Affiche des informations sur les filtres de la feuille de calcul active. ; ***************************************************************************** Local $aFilters = _Excel_FilterGet($oWorkbook) If @error Then Exit MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_FilterGet-Exemple 1", "Erreur lors du filtrage des données." & @CRLF & "@error = " & @error & ", @extended = " & @extended) _ArrayDisplay($aFilters, "UDF Excel: _Excel_FilterGet-Exemple 1", Default, Default, Default, "Filter on|#areas|Criteria1|Criteria2|Operator|Range|#Records")