Funktionreferenz


_Excel_BookOpen

Beschreibung anzeigen in

Öffnet ein existierendes Arbeitsbuch (Workbook)

#include <Excel.au3>
_Excel_BookOpen ( $oExcel, $sFilePath [, $bReadOnly = False [, $bVisible = True [, $sPassword = Default [, $sWritePassword = Default [, $bUpdateLinks = Default]]]]] )

Parameter

$oExcel Excel Anwendungs-Objekt, mit dem das neue Arbeitsbuch geöffnet werden soll
$sFilePath Pfad oder Dateiname der Datei die geöffnet werden soll
$bReadOnly [optional] True öffnet das Arbeitsbuch als read-only (nur lesen) (Standard = False)
$bVisible [optional] True legt fest, ob das Arbeitsbuch-Fenster sichtbar sein wird (Standard = True)
$sPassword [optional] Passwort um das Arbeitsbuch zu lesen (falls es vergeben wurde) (standardmäßig keines)
$sWritePassword [optional] Passwort um das Arbeitsbuch zu schreiben (falls es vergeben wurde) (standardmäßig keines)
$bUpdateLinks [optional] Legt die Art fest, wie externe Referenzen (Links) in der Datei aktualisiert werden (Standard = Schlüsselwort Default)
Mögliche Werte sind:
    Default: Excel fragt den Nutzer um zu entscheiden, wie Links aktualisiert werden sollen
    0: Excel öffnet keine Aktualisierungs-Links
    3: Excel aktualisiert alle Links

Rückgabewert

Erfolg: Ein Arbeitsbuch-Objekt. @extended wird auf 1 gesetzt wenn $bReadOnly = False aber Lese- und Schreibzugriff nicht garantiert werden kann. Siehe unter Remarks für mehr Details.
Fehler: 0 und setzt @error.
@error: 1 - $oExcel ist kein Objekt oder kein Anwendungs-Objekt
2 - Der angegebene $sFilePath existiert nicht
3 - Es ist nicht möglich $sFilePath zu öffnen. @extended wird auf den COM Fehlercode gesetzt der von der Open-Funktion zurückgegeben wird
4 - Excel hat kein Arbeitsbuch-Objekt zurückgegeben. Dies könnte darauf zurückzuführen sein, dass Excel nicht in der Lage ist, zwei Arbeitsmappen mit demselben Namen gleichzeitig zu öffnen

Bemerkungen

Wenn $bReadOnly = False gesetzt ist, das Dokument aber nicht zum Lesen und Schreiben geöffnet werden kann, ist @extended auf 1 gesetzt.
Das Arbeitsbuch wurde nur zum Lesen geöffnet, weil es bereits von einem anderen Nutzer/Dienst geöffnet ist oder die Datei vom Dateisystem auf nur Lesen gesetzt ist.
Wenn das Arbeitsbuch geändert wird muss _Excel_BookSaveAs() verwendet werden um es an einem anderen Ort oder mit einem anderen Namen zu speichern.

Wenn $bVisible = False gesetzt ist, muss sichergestellt werden, dass das Arbeitsbuch wieder sichtbar gemacht wird, bevor es gespeichert wird.
Dies geschieht mit $oExcel.Windows($oWorkbook.Name).Visible
Andernfalls wird das Arbeitsbuch nicht sichtbar, wenn es manuell mit Excel geöffnet wird.
Meist wird dieser Parameter nicht gebraucht. $bVisible = False in _Excel_Open ist der bevorzugte Weg.

Wenn $bUpdateLinks auf Default gesetzt ist, bekommt der Nutzer nur eine Abfrage, wenn $bDisplayAlerts in der Funktion _Excel_Open auf True gesetzt ist.
Wenn $bDisplayAlerts auf falsch gesetzt ist, wählt Excel die Standardantwort.

Verwandte Funktionen

_Excel_BookAttach, _Excel_BookClose, _Excel_BookNew, _Excel_BookOpenText

Beispiel

#include <Excel.au3>
#include <MsgBoxConstants.au3>

; Erstellt das Anwendungsobjekt
Local $oExcel = _Excel_Open()
If @error Then Exit MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_BookOpen Beispiel 1", "Fehler beim Erstellen des Excel-Anwendungsobjekts." & @CRLF & "@error = " & @error & ", @extended = " & @extended)

; Öffnet eine bestehende Arbeitmappe und zeigt das Erstellungsdatum an
Local $sWorkbook = @ScriptDir & "\Extras\_Excel1.xls"
Local $oWorkbook = _Excel_BookOpen($oExcel, $sWorkbook)
If @error Then Exit MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_BookOpen Beispiel 1", "Fehler beim Öffnen der Arbeitsmappe '" & $sWorkbook & "'." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_BookOpen Beispiel 1", "Arbeitsmappe '" & $sWorkbook & "' wurde erfolgreich geöffnet." & @CRLF & @CRLF & "Erstellungsdatum: " & $oWorkbook.BuiltinDocumentProperties("Creation Date").Value)