Hozzáférés integrálása az irodai más komponensekkel - szoftver termékek

Ügyfelek és automatizálási szerverek

Amikor két alkalmazást integrál, az egyik eszközt biztosít a használatra, a másik az első alkalmazás objektumait használja.

  • Olyan alkalmazás, amelynek objektumai más alkalmazásokhoz rendelkezésre állnak, automatizálási kiszolgálónak nevezik (néha komponensnek is nevezik)
  • Egy másik alkalmazás objektumait alkalmazó alkalmazás automatizálási ügyfél (vagy vezérlő). Az egyéb alkalmazásokhoz elérhető objektumokat automatizálási objektumoknak nevezik

Az automatizálási objektum bármely Microsoft Office alkalmazásból történő programozásához:

    1. Állítson be egy hivatkozást az alkalmazás-szerver automatizálás objektumainak könyvtárára.
    2. Hozzon létre egy objektumot a kívánt osztályból.
    3. Végezzen el minden szükséges műveletet az objektumon, hivatkozva annak tulajdonságaira és módszereire.
    4. Zárja be az objektumot.

A Microsoft Access automata ügyfélként

Az automatizálási műveletekhez használt objektum létrehozásához először létre kell hoznia egy osztály példányát, és hozzá kell rendelnie hozzá az objektumváltozathoz. Azonban nem hozhat létre objektumot a kiszolgáló alkalmazásobjektummodelljéből, hanem csak globális objektumokat. A Microsoft Office alkalmazások összes objektummodellje számára ez a globális objektum az objektum-hierarchia tetején lévő Alkalmazásobjektum.

Új kulcsszó használata

Ez a kulcsszó egy objektumváltozót ír le, és egyidejűleg hivatkozást ad az objektumosztály új példányára.

Dim app Mint új Excel.Application

Ha az Új kulcsszó használatával létrehozza az Alkalmazásosztály új példányát, a megfelelő alkalmazás indítódik (például Word vagy Excel). Ha ez az alkalmazás már fut, akkor annak érdekében, hogy ne futtassa a második példányt, a GetObject () függvény használatával jobb az új példány létrehozása az osztályhoz,

Sub PowerPointOpenFile_Click ()
Hiba történt GoTo Err_
Dim strAppName karakterláncként
Dim App Mint New PowerPoint.Application
strAppName = CurrentProject.Path "\ Presentation1.ppt"
Kb
.Látható = igaz
.Presentations.Open strAppName megnyitása
Vége
Állítsa be az app = Semmi sem
Exit_:
Kilépés a Subből
Err_:
MsgBox Err.Description
Folytatás Exit_
End Sub

A CreateObject () függvénnyel,

Az app = CreateObject ("Excel.Application") beállítása

Ebben az esetben az objektumváltozót objektumként deklarálhatjuk, és nem szükséges beállítani a Microsoft Word objektumkönyvtárra mutató hivatkozást. És így lehet kijelenteni:

Dim app Mint Excel.Application

Alkalmazás beállítása = CreateObject ("Excel.Application.11")

Példa a funkció használatára:

Sub ExcelOpenFile ()
Hiba történt GoTo Err_
Dim strAppName karakterláncként
Dim app Mint Excel.Application
strAppName = CurrentProject.Path "\ Book1.xls"
Az app = CreateObject ("Excel.Application") beállítása
Kb
.Látható = igaz
.Workbooks.Open strAppName megnyitása
Vége
Állítsa be az app = Semmi sem
Exit_:
Kilépés a Subből
Err_:
MsgBox Err.Description
Folytatás Exit_
End Sub

A GetObject () függvénnyel,

Ezt a módszert használják, hogy egy hivatkozás egy meglévő példány az osztály, azaz a. E. A hozzáférést a meglévő tárolt dokumentumok fájlokat vagy hozzáférni az Application objektum már fut a szerver alkalmazások. A Getobject () függvény a következő szintaxissal rendelkezik:

Állítsa <объектнаяПеременная> = Getobject ([<путь>] [,<класс>])

A függvény legalább egy argumentumait meg kell adni!

Fontos megfontolni a funkciók írásának három lehetőségét:

  • Az app = GetObject ("Excel.Application") beállítása

itt az első paraméter kihagyásra kerül - akkor a függvény a fentiekhez hasonlóan működik - csak azért, hogy létrehozzon egy objektumosztály példányát.

  • Az app = GetObject ("C: \ Baze \ Book1.xls", "Excel.Application") beállítása

Itt megadja mind a fájl elérési útját, mind az alkalmazás nevét. Ebben az esetben a Book.xls fájl

  • Az app = GetObject ("C: \ Baze \ Book1.xls") beállítása

Példa a funkció használatára:

Sub WordOpenFile ()
Hiba történt GoTo Err_
Dim strAppName karakterláncként
Dim App Mint Word.Application
strAppName = CurrentProject.Path "\ Doc1.doc"
Az app = GetObject ("", "Word.Application") beállítása
Kb
.Látható = igaz
.Documents.Open strAppName megnyitása
Vége
Állítsa be az app = Semmi sem
Exit_:
Kilépés a Subből
Err_:
MsgBox Err.Description
Folytatás Exit_
End Sub

Miután befejeződött a kiszolgáló alkalmazásobjektumokkal végzett összes szükséges művelet, ezeket az objektumokat le kell zárni az általuk elfoglalt memória felszabadítása érdekében. A legtöbb objektum támogatja a közeli vagy kilépési módszereket. Ezenkívül szabaddá kell tenni az objektumváltozót a Nothing paranccsal.

A cikkhez csatolt példa a Word, Excel, Power Point dokumentumok megnyitásának lehetőségeit mutatja be. Az egyes dokumentumok módosítása esetén a felfedezés három módszerének egyikét használják. Természetesen bármelyik dokumentum bármilyen módon megnyitható.

Letöltések