Retourne la liste des classeurs d'une instance spécifiée d'Excel ou de toutes les instances d'Excel
#include <Excel.au3>
_Excel_BookList ( [$oExcel = Default] )
$oExcel | [optionnel] Un objet Application Excel (par défaut, Default, concerne toutes les instances Excel) |
Succès: | Retourne un tableau à deux dimensions indexé à partir de zéro, qui contient les informations suivantes: 0 - Objet classeur 1 - Nom du classeur/fichier 2 - Chemin complet du classeur/fichier |
Échec: | Retourne 0 et définit @error <> 0. |
@error: | 1 - $oExcel n'est pas un objet ou n'est pas un objet Application |
#include <Array.au3> #include <Excel.au3> #include <MsgBoxConstants.au3> ; Crée deux instances d'Excel et ouvre deux classeurs Local $sWorkbook1 = @ScriptDir & "\Extras\_Excel1.xls", $sWorkbook2 = @ScriptDir & "\Extras\_Excel2.xls" Local $oExcel1 = _Excel_Open() If @error Then Exit MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_BookList-Exemple", "Erreur lors de la création de l'objet Excel." & @CRLF & "@error = " & @error & ", @extended = " & @extended) Local $oWorkbook1 = _Excel_BookOpen($oExcel1, $sWorkbook1) If @error Then MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_BookList-Exemple", "Erreur lors de l'ouverture du classeur '" & $sWorkbook1 & "'." & @CRLF & "@error = " & @error & ", @extended = " & @extended) _Excel_Close($oExcel1) Exit EndIf Local $oExcel2 = _Excel_Open(Default, Default, Default, Default, True) If @error Then Exit MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_BookList-Exemple", "Erreur lors de la création de l'objet Excel." & @CRLF & "@error = " & @error & ", @extended = " & @extended) Local $oWorkbook2 = _Excel_BookOpen($oExcel2, $sWorkbook2) If @error Then MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_BookList-Exemple", "Erreur lors de l'ouverture du classeur '" & $sWorkbook1 & "'." & @CRLF & "@error = " & @error & ", @extended = " & @extended) _Excel_Close($oExcel1) _Excel_Close($oExcel2) Exit EndIf ; ***************************************************************************** ; Affiche la liste de tous les classeurs de toutes les instances Excel ; ***************************************************************************** Local $aWorkBooks = _Excel_BookList() If @error Then Exit MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_BookList-Exemple", "Erreur lors de l'énumération des classeurs." & @CRLF & "@error = " & @error & ", @extended = " & @extended) _ArrayDisplay($aWorkBooks, "UDF Excel: _Excel_BookList-Exemple - Liste des classeurs de toutes les instances")