Ouvre un classeur existant
#include <Excel.au3>
_Excel_BookOpen ( $oExcel, $sFilePath [, $bReadOnly = False [, $bVisible = True [, $sPassword = Default [, $sWritePassword = Default [, $bUpdateLinks = Default]]]]] )
$oExcel | Objet application Excel où vous voulez ouvrir le classeur |
$sFilePath | Chemin et nom du fichier à ouvrir |
$bReadOnly | [optionnel] True ouvre le classeur en lecture seule (par défaut, False) |
$bVisible | [optionnel] True spécifie que la fenêtre du classeur sera visible (par défaut, True) |
$sPassword | [optionnel] Le mot de passe qui a été utilisé pour protéger en lecture le classeur, le cas échéant ( par défaut: pas de protection ) |
$sWritePassword | [optionnel] Le mot de passe qui a été utilisé pour protéger en écriture le classeur, le cas échéant (par défaut, pas de protection) |
$bUpdateLinks | [optionnel] Indique la façon dont les références externes (liens) du fichier sont mise à jour (par défaut, Default) Les valeurs valides sont: Par défaut: Excel demande à l'utilisateur de décider comment mettre à jour les liens . 0: Excel ne met pas à jour les liens . 3: Excel met à jour tous les liens. |
Succès: | Retourne un objet Workbook. @extended est mis à 1 si $bReadOnly = False mais l'accès en lecture-écriture ne devrait pas être accordé. Voir la section Remarque pour plus de détails. |
Échec: | Retourne 0 et définit @error <> 0. |
@error: | 1 - $oExcel n'est pas un objet ou n'est pas un objet application 2 - Le fichier $sFilePath n'existe pas 3 - Impossible d'ouvrir $sFilePath. @extended contient le code d'erreur COM retourné par la méthode Open |
Si vous définissez $bReadOnly à False mais que le document ne peut pas être ouvert en lecture-écriture, @error = 1.
Le classeur a été ouvert en lecture seule, car il a déjà été ouvert par un autre utilisateur/tâche ou le fichier est en lecture seule par le système de fichiers.
Si vous modifiez le classeur, vous devez utiliser _Excel_BookSaveAs() pour le sauvegarder à un autre endroit ou avec un autre nom.
Lors du réglage de $bVisible = False lors de l'ouverture d'un classeur, assurez-vous de définir de nouveau le classeur à visible avant de sauvegarder le classeur.
Utilisez $oExcel.Windows($oWorkbook.Name).Visible = True pour rendre de nouveau le classeur visible.
Sinon le classeur ne sera pas visible lorsque vous l'ouvrirez manuellement à l'aide d'Excel.
La plupart du temps ce paramètre n'est pas nécessaire. Utiliser $bVisible = False dans _Excel_Open est le moyen privilégié.
Si $bUpdateLinks est défini à Default, l'utilisateur est interrogé seulement si $bDisplayAlerts est fixé à True dans la fonction _Excel_Open.
Si $bDisplayAlerts est défini à False, Excel choisit la réponse par défaut.
_Excel_BookAttach, _Excel_BookClose, _Excel_BookNew, _Excel_BookOpenText
#include <Excel.au3> #include <MsgBoxConstants.au3> ; Crée un objet Excel Local $oExcel = _Excel_Open() If @error Then Exit MsgBox(16, "UDF Excel: _Excel_BookOpen-Exemple", "Erreur lors de la création de l'objet Excel." & @CRLF & "@error = " & @error & ", @extended = " & @extended) ; ***************************************************************************** ; Ouvre un classeur existant et retourne son identifiant d'objet. ; ***************************************************************************** Local $sWorkbook = @ScriptDir & "\Extras\_Excel1.xls" Local $oWorkbook = _Excel_BookOpen($oExcel, $sWorkbook, Default, Default, True) If @error Then Exit MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_BookOpen-Exemple", "Erreur lors de l'ouverture de '" & $sWorkbook & "'." & @CRLF & "@error = " & @error & ", @extended = " & @extended) MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_BookOpen-Exemple", "Le classeur '" & $sWorkbook & "' a été ouvert avec succès." & @CRLF & @CRLF & "Date de Création: " & $oWorkbook.BuiltinDocumentProperties("Creation Date").Value)