Összefoglalás

A Microsoft Office Excel támogatja az Automation-bővítményeket a Component Object Model (COM) bővítmények mellett. Ez a cikk a két bővítménytípus közötti különbségeket ismerteti. 

További információ

COM-bővítmények

A COM-bővítmények lehetővé mutatják a fejlesztőnek, hogy kiterjeszthesse az Office-alkalmazások funkcióit az egyéni feladatokhoz. A COM-bővítményeket általában arra használják, hogy automatizálják az Excelt a parancssáv gombjára, egy űrlapra vagy párbeszédpanelre való kattintásra, vagy más, az Excelre jellemző eseményre, például munkafüzetek megnyitására vagy bezárására, illetve a munkalapok adatainak bevitelére. A COM bővítményfüggvények nem hívhatók meg közvetlenül a munkalapok cellaképleteiből.A COM-bővítmények egy folyamaton belüli COM-kiszolgáló (ActiveX DLL), amelyeknek implementálniuk kell az IDTExensibility2 felületet. Minden COM-bővítménynek implementálnia kell a felület öt metódusát: OnConnection, OnStartupComplete, OnAddinsUpdate, OnBeginShutDown és OnDisconnection.Amikor egy COM-bővítményt telepít egy felhasználó rendszerére, a rendszer beállításjegyzék-bejegyzéseket hoz létre a bővítményhez. A normál COM-regisztráción kívül a COM-bővítmények regisztrálva lesznek minden olyan Office-alkalmazáshoz, amelyben fut. Az Excel által használt COM-bővítmények a következő beállításkulcsban vannak regisztrálva:

            
HKEY_CURRENT_USER\Software\Microsoft\Office\Excel\Addins\ 

Ez a kulcs minden telepített COM-bővítményhez tartalmaz egy alkulcsot. Az alkulcs neve a COM-bővítmény ProgID azonosítója. A COM-bővítmény alkulcsa olyan értékeket is tartalmaz, amelyek a COM-bővítmény rövid nevét, leírását és betöltési viselkedését írják le. A betöltési viselkedés azt írja le, hogy a bővítmény hogyan töltődik be az Excelben: indításkor töltődik be, csak következő indításkor töltődik be, igény szerint betöltődik, vagy nincs betöltve.A COM-bővítmények az Excel felhasználói felületén is betölthetők és eltávolíthatók. Ezt a következőképpen teheti meg:

  1. Mutasson a Nézet menü Eszköztárak pontjára, majd kattintson a Testreszabás parancsra.

  2. Az Eszköztárak párbeszédpanelen kattintson a Speciális fülre. A kategóriák listájában válassza az Eszközök lehetőséget. Keresse meg a COM-bővítményeket a parancsok listájában, és húzza a parancsot egy tetszőleges menübe vagy parancssávba. Zárja be az Eszköztárak párbeszédpanelt.

  3. A COM-bővítmények párbeszédpanel megjelenítéséhez kattintson a hozzáadott COM-bővítmények parancsra. A párbeszédpanel felsorolja a rendszeren telepített összes COM-bővítményt, és az aktuálisan betöltött COM-bővítmények vannak kiválasztva.

A COM-bővítmények az Excel felhasználói felületén is betölthetők és eltávolíthatók. Ezt a következőképpen teheti meg:

  1. Kattintson a Microsoft Office gombra, majd Az Excel beállításai gombra.

  2. Kattintson a Bővítmények elemre.

  3. A Kezelés területen kattintson a COM-bővítmények elemre, majd az Ugrás gombra.A COM-bővítmények párbeszédpanel felsorolja a számítógépre telepített összes COM-bővítményt. Az aktuálisan betöltött COM-bővítmények vannak kiválasztva.

További információért tekintse meg a Microsoft következő webhelyét:

Az Office-bővítmények platform áttekintése

Automation-bővítmények

A COM-bővítmények mellett az Excel támogatja az Automation-bővítményeket is. Az Automation-bővítmények COM-bővítményekre épülnek, amelyekben az Automation-bővítmények függvényei Excel-munkalapok képleteiből hívhatók meg. A COM-bővítményeknek olyan folyamaton belüli COM-kiszolgálóknak kell lenniük, amelyek támogatják az IDTExtensibility2 felületet; Az Automation-bővítmények azonban lehetnek folyamatban lévő vagy folyamaton kívüli COM-kiszolgálók, és az IDTExtensibility2 implementálása nem kötelező.Ha egy Automation-bővítmény függvényeit szeretné használni az Excelben, kövesse az alábbi lépéseket:

  1. Az Eszközök menüben kattintson a Bővítmények elemre.

  2. A Add-Ins párbeszédpanelen kattintson az Automatizálás elemre. A regisztrált COM-kiszolgálók listájából válassza ki az Automation-bővítményt, és kattintson az OK gombra.

  3. Az Automation-bővítmény megjelenik a Bővítmények párbeszédpanelen. Kattintson az OK gombra a Add-Ins párbeszédpanel bezárásához.

Ha az Excel 2007-ben és újabb verzióban egy Automation-bővítményből szeretne függvényeket használni, kövesse az alábbi lépéseket:

  1. Kattintson a Microsoft Office gombra, majd Az Excel beállításai gombra.

  2. Kattintson a Bővítmények elemre.

  3. A Kezelés területen kattintson az Excel-bővítmények elemre, majd az Ugrás gombra.

  4. A Bővítmények párbeszédpanelen kattintson az Automation elemre. A regisztrált COM-kiszolgálók listájában kattintson az Automation-bővítményre, majd az OK gombra.Az Automation-bővítmény megjelenik a Bővítmények párbeszédpanelen. Kattintson az OK gombra a Bővítmények párbeszédpanel bezárásához.

Ha hozzáadja a listát a Add-Ins párbeszédpanelen, vagy amikor kijelöli és törli a bővítményeket a listában, az Excel a módosításokat a beállításjegyzékben tárolja. Az Excel először a következő beállításjegyzék-beállítással állapítja meg, hogy be van-e töltve egy Automation-bővítmény a bővítménylistában:

 Excel 2002
Key:            HKEY_CURRENT_USER\Software\Microsoft\Office\10.0\Excel\Options
String:         OPENx
Sample Value:   /A "ServerName.ClassName"

 Excel 2003
Key:            HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Excel\Options
String:         OPENx
Sample Value:   /A "ServerName.ClassName"
Excel 2007
Key:            HKEY_CURRENT_USER\Software\Microsoft\Office\12.0\Excel\Options
String:         OPENx
Sample Value:   /A "ServerName.ClassName"

Megjegyzés: Módosítsa az Office verziószámát a használt verzió alapján.A sztringértékben használt /A kapcsoló új az Excelben és a régebbi verziókban, és kifejezetten az Automation-bővítmények betöltésére szolgál. Minden Automation-bővítmény igény szerint töltődik be; Nincs olyan beállítás, amely megváltoztathatja az Automation-bővítmények betöltési viselkedését.Ha a Add-Ins párbeszédpanelen felsorolt Automation-bővítmény törlődik, a következő beállításkulcsban létrejön egy alkulcs, amelynek neve megegyezik a bővítmény ProgID azonosítójával:

HKEY_CURRENT_USER\Software\Microsoft\Office\10.0\Excel\Add-in Manager Excel 2003:HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Excel\Add-in Manager HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Excel\Add-in Manager Ez a beállításjegyzék-beállítás biztosítja, hogy a bővítménylistához hozzáadott Automation-bővítmények akkor is megmaradnak a listában, ha úgy döntött, hogy nem tölti be őket.További információért tekintse meg a Microsoft következő webhelyét:

Az Office-bővítmények platform áttekintése

Az IDTExtensibility2-t megvalósító Automation-bővítmények

Ahogy korábban említettük, egy Automation-bővítmény implementálhatja az IDTExtensibility2 bővítményt, de nem szükséges ahhoz, hogy az Excel meghívja a bővítmény függvényeit egy munkalapról. Ha azt szeretné, hogy az Automation-bővítmény hivatkozzon az Excel-példányra, implementálhatja az IDTExtensibility2-t, és az OnConnection Alkalmazás paraméterével automatizálhatja az Excelt.Egy Automation-bővítmény, amely implementálja Az IDTExtensibility2 a COM Add-Ins párbeszédpanelen és a Add-Ins párbeszédpanelen is betölthető az Excel felhasználói felületére. Az alábbiak az Automation-bővítmények viselkedését írják le attól függően, hogy az egyik vagy mindkét párbeszédpanelen be van-e töltve:

  • Csak a Bővítmények párbeszédpanelen töltődik be.A bővítmény igény szerint betöltődik. A bővítmény függvényei meghívhatók egy munkalap képleteiből.

  • Csak a COM-bővítmények párbeszédpanelen tölthető be.A bővítmény COM-bővítményként van betöltve, és a betöltési viselkedését a beállításjegyzék beállításai határozzák meg. A bővítmény függvényei nem hívhatók meg munkalap képleteiből.

  • A COM-bővítmények párbeszédpanelen és a Bővítmények párbeszédpanelen is be van töltve.A bővítmény két különálló példánya töltődik be. Az egyik példány COM-bővítményként, a másik pedig Automation-bővítményként van betöltve. A COM-bővítménypéldány a beállításjegyzékben jelzett terhelési viselkedést használja; az Automation-bővítménypéldány igény szerint betöltődik. A két példány egymástól függetlenül működik, és nem osztoznak a globális változókon.

Mivel az Automation-bővítmények igény szerint töltődnek be, az Excel megkísérelheti betölteni a bővítményt cella szerkesztési módban. Ezért amikor olyan Automation-bővítményt fejleszt, amely támogatja az IDTExtensibility2-t, ügyeljen arra, hogy ne tegyen semmit, amely megpróbálja módosítani az Excel állapotát, miközben a bővítmény betöltődik. További információt a Microsoft Tudásbázis következő cikkében talál:

284876 HIBA: Az Excel meghiúsul, ha az Automation Add-In betöltődik (c) Microsoft Corporation 2001, Minden jog fenntartva. Lori B. Turner, Microsoft Corporation közreműködése.  

További segítségre van szüksége?

További lehetőségeket szeretne?

Fedezze fel az előfizetés előnyeit, böngésszen az oktatóanyagok között, ismerje meg, hogyan teheti biztonságossá eszközét, és így tovább.