Function GetObject(strPathOrName Ref String, nResult Ref Numeric) As Object
Es wird aufgrund eines Identifikationsstrings versucht, ein COM-Objekt anzusprechen, der Erfolg dieser Bemⁿhung ist in nResult codiert.
Siehe dazu:
Get_Object_Pfad , Get_Object_Name
Parameter
strPathOrName
Datentyp String der Scriptsprache
"Excel.Application" Name einer COM-fΣhigen Anwendung
"c:\\windows\\EigeneDateien\\Mappe1.xls" der Dateipfad eines COM-Objects
"Mappe1.xls" eine COM-fΣhige Datei im Verzeichnis, in dem die Formulardatei gespeichert ist
nResult:
Datentyp Numeric der Scriptsprache als Referenz . Dient lediglich als Rⁿckgabewert!
0: es konnte kein COM-Object angesprochen werden
1: es wurde ein laufende Instanz des COM-Objekts gefunden
2: es wurde eine neue Instanz des COM-Objekts erzeugt
Beschreibung
Mit dieser Funktion wird versucht, eine bereits aktive Instanz eines COM-Objekts anzusprechen. Wird ein passendes COM-Objekt identifiziert, das allerdings noch inaktiv ist, so wird eine neue Instanz kreiert. GetObjekt() ersetzt somit die FunktionalitΣt von CreateObject().
WICHTIG:
1. Die Stringvariable strPfadOderName ist eine Referenzvariable,
die ihren Wert durch den Funktionsaufruf Σndern kann. Dies findet dann
statt, wenn ein unvollstΣndiger Dateipfad angegeben wird, der durch GetObject()
um den aktuellen Formularpfad ergΣnzt wird. strPfadOderName enthΣlt danach
den vollstΣndigen Pfad!
Dies hat auch zur Folge, dass GetObject() kein konstanter String ⁿbergeben
werden kann,
FALSCH: Excel = GetObject("Excel.Application", nResult),
sondern der String muss zuvor einer Variablen zugewiesen werden,
RICHTIG: strName = "Excel.Application"
Excel = GetObject(strName, nResult).
2. Soll einer Stringvariable eine Dateipfad zugewiesen werden,
indem der String in der Formulardatei fest vorgegeben ist, so sind fⁿr
den Backslash "\" jeweils zwei Slashes "\\" einzugeben.
Beispiel:
"c:\\WINNT\\Profiles\\BenutzerName\\Eigene Dateien\\mappe1.xls"
Dies liegt daran, dass durch einen Backslash Steuerzeichen gekennzeichnet
werden, d.h. intern bleibt von den zwei Slashes nur einer ⁿbrig.
3. Bei MS-Excel und MS-Word:
Wird ein Dokument dieser Anwendungen angesprochen, z.B.
strPfad = "Mappe1.xls"
Mappe = GetObject(strPfad, nResult),
und war dieses Dokument noch nicht aktiv, so liefert GetObject() zwar die
Schnittstelle zu diesem Objekt, um aber damit arbeiten zu k÷nnen, muss
zunΣchst noch der Datei-╓ffne-Befehl der Anwendung MS-Excel bzw. MS-Word
ausgefⁿhrt werden, z.B.
Excel = Mappe.Application
Mappe = Excel.Workbooks.Open(strPfad)
Siehe auch
Allgemeines zur COM-Schnittstelle ,