Excel COM add-in và t? đ?ng hóa add-in

D?ch tiêu đ? D?ch tiêu đ?
ID c?a bài: 291392 - Xem s?n ph?m mà bài này áp d?ng vào.
Bung t?t c? | Thu g?n t?t c?

TÓM T?T

Microsoft Office Excel 2002 và Microsoft Office 2007 h? tr? t? đ?ng hóa Add-in trong ngoài mô h?nh đ?i tư?ng thành ph?n (COM) Add-in. Bài này gi?i thích các s? khác bi?t gi?a hai lo?i Add-in.

THÔNG TIN THÊM

COM Add-in

COM Add-in cho các nhà phát tri?n v?i m?t cách đ? m? r?ng các ch?c năng c?a các ?ng d?ng Office 2000, Office XP, Office 2003 và Office 2007 cho nhi?m v? tu? ch?nh. COM Add-ins thư?ng đư?c s? d?ng đ? t? đ?ng hoá Excel đ? ph?n ?ng l?i m?t b?m vào m?t nút CommandBar, m?t h?p tho?i ho?c h?nh th?c ho?c m?t s? s? ki?n khác c? th? cho Excel như m? ho?c đóng sách bài t?p ho?c cách nh?p d? li?u b?ng. COM Add-in ch?c năng không th? đư?c g?i là tr?c ti?p t? công th?c t? bào trong b?ng.

M?t COM Add-in là m?t trong quá tr?nh COM máy ch? (m?t ActiveX DLL) mà ph?i th?c hi?n các IDTExensibility2 giao di?n. T?t c? các COM Add-ins ph?i th?c hi?n m?i năm phương pháp c?a giao di?n này: OnConnection, OnStartupComplete, OnAddinsUpdate, OnBeginShutDown, và OnDisconnection.

Khi m?t COM Add-in đư?c cài đ?t trên h? th?ng c?a ngư?i dùng, m?c đăng k? đư?c t?o ra cho các Add-in. Thêm vào b?nh thư?ng COM đăng k?, m?t COM Add-in đư?c đăng k? cho m?i ?ng d?ng văn ph?ng trong đó nó ch?y. COM Add-in đư?c s? d?ng b?i Excel đư?c đăng k? trong s? đăng k? sau đây khóa:
HKEY_CURRENT_USER\Software\Microsoft\Office\Excel\Addins\ 
					
Phím này có ch?a m?t subkey cho m?i COM đ? cài đ?t Add-in. Tên c?a subkey là ProgID cho các COM Add-in. Subkey cho m?t COM Add-in c?ng ch?a các giá tr? mà miêu t? các COM Add-in c?a tên thân thi?n, mô t?, và hành vi c?a t?i. Hành vi t?i mô t? làm th? nào các Add-in là đư?c t?i trong Excel: n?p lúc kh?i đ?ng, n?p lúc kh?i đ?ng ti?p theo ch?, c?t cánh ngày yêu c?u, ho?c không n?p đư?c.

COM Add-ins c?ng có th? đư?c n?p và b?c d? thông qua giao di?n ngư?i dùng Excel 2002. Để thực hiện việc này, hãy làm theo những bước sau:
  1. Trên các Xem tr?nh đơn, đi?m đ?n Thanh công c? sau đó b?m Tùy ch?nh.
  2. Trong các Thanh công c? h?p tho?i h?p, b?m vào các Nâng cao tab. Trong danh sách m?c, ch?n Công cụ. Xác đ?nh v? trí COM Add-in trong danh sách các l?nh và kéo các l?nh đ?n m?t tr?nh đơn ho?c CommandBar c?a b?n l?a ch?n. Đóng các Thanh công c? h?p tho?i.
  3. B?m vào các COM Add-in l?nh b?n đ? thêm vào đ? hi?n th? các COM Add-in h?p tho?i. H?p danh sách t?t c? các COM Add-in đư?c đư?c cài đ?t trên h? th?ng c?a b?n, và COM Add-in mà hi?n đang đư?c t?i l?a ch?n.
COM Add-ins c?ng có th? đư?c n?p và b?c d? thông qua giao di?n ngư?i s? d?ng Excel 2007. Để thực hiện việc này, hãy làm theo những bước sau:
  1. B?m vào các Microsoft Office Button, sau đó b?m Excel tùy ch?n.
  2. Nh?p vào Add-in.
  3. Dư?i Qu?n l?, b?m COM thêm ins, sau đó b?m Đi .

    Các COM Add-in h?p danh sách t?t c? các COM add-in đư?c cài đ?t trên máy tính. COM add-in mà hi?n đang đư?c t?i đư?c l?a ch?n.
Cho thông tin b? sung v? COM Add-in, nh?p vào s? bài vi?t sau đây đ? xem các bài vi?t trong cơ s? ki?n th?c Microsoft:
238228HOWTO: Xây d?ng m?t văn ph?ng 2000 COM Add-In trong Visual Basic
230689 M?U: Comaddin.exe Office 2000 COM Add-In đư?c vi?t b?ng Visual c ++
Đ? bi?t thêm chi ti?t, xem Microsoft sau đây Web site:
Văn ph?ng Add-in
http://support.Microsoft.com/ofd

T? đ?ng hóa Add-in

Thêm vào COM Add-in, Excel 2002 và Excel 2003 h? tr? T? đ?ng hóa Add-ins. t? đ?ng hóa Add-ins xây d?ng trên COM Add-in trong đó ch?c năng trong t? đ?ng hóa Add-in có th? đư?c g?i t? công th?c trong Excel b?ng. COM Add-in ph?i là trong quá tr?nh COM các máy ch? h? tr? các IDTExtensibility2 giao di?n; Tuy nhiên, t? đ?ng hóa Add-in có th? đư?c trong quá tr?nh ho?c các máy ch? COM ra quá tr?nh và th?c hi?n các IDTExtensibility2 là tùy ch?n.

S? d?ng ch?c năng t? m?t t? đ?ng hóa Add-in trong Excel, h?y làm theo các bư?c sau:
  1. Trên các Công cụ tr?nh đơn, nh?p vào Add-in.
  2. Trong các Add-in h?p tho?i h?p, b?m vào T? đ?ng hóa. T? danh sách các máy ch? COM đăng k?, ch?n t? đ?ng hóa c?a b?n Thêm vào và Click vào Ok.
  3. Vi?c t? đ?ng hóa Add-in xu?t hi?n trong các Trình bổ sung h?p tho?i. Nh?p vào Ok đ? đóng nh?ng Add-in h?p tho?i.
S? d?ng ch?c năng t? m?t t? đ?ng hóa Add-in trong Excel 2007, h?y làm theo các bư?c sau:
  1. B?m vào các Microsoft Office Button, sau đó b?m Excel tùy ch?n.
  2. Nh?p vào Add-in.
  3. Dư?i Qu?n l?, b?m Excel thêm ins, sau đó b?m Đi.
  4. Trong các Add-in h?p tho?i h?p, b?m vào T? đ?ng hóa. In the list of registered COM servers, click your Automation Add-in, and then click OK.

    The Automation Add-in appears in the Add-ins dialog box. Click OK to close the Add-Ins dialog box.
When you make additions to the list in the Add-Ins dialog box or when you select and clear Add-ins in the list, Excel stores your changes in the registry. First, Excel uses the following registry setting to determine whether or not an Automation Add-in in the Add-in list is loaded:
 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"
					
The /A switch that is used in the string value is new to Excel 2002 / Excel 2003 and is used specifically to load Automation Add-ins. All Automation Add-ins are loaded on demand; there is no setting that can change the load behavior for an Automation Add-in.

When an Automation Add-in that is listed in the Add-Ins dialog box is cleared, a subkey with a name equal to the Add-in's ProgID is created in the following registry key:
Excel 2002:
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
					
This registry setting ensures that Automation Add-ins that you have added to the Add-ins list are retained in the list even when you have chosen not to load them.

For more information about Automation Add-Ins, see the following articles in the Microsoft Knowledge Base:
285337 HOWTO: Create a Visual Basic Automation Add-in for Excel Worksheet Functions
For more information, see the following Microsoft Web site:
Office Add-ins
http://support.microsoft.com/ofd

Automation Add-ins That Implement IDTExtensibility2

As previously mentioned, an Automation Add-in may implement IDTExtensibility2, but it is not required in order for Excel to call the functions in the Add-in from a worksheet. If you require that your Automation Add-in obtains a reference to the Excel instance, you can implement IDTExtensibility2 and use the Application parameter of OnConnection to automate Excel.

An Automation Add-in that implements IDTExtensibility2 can be loaded in the Excel user interface through both the COM Add-Ins dialog box and the Add-Ins dialog box. The following describes the behavior of an Automation Add-in based on whether it is loaded in one or both of these dialog boxes:
  • Loaded only in the Add-ins dialog box.

    The Add-in is loaded on demand. Functions in the Add-in may be called from formulas in a worksheet.
  • Loaded only in the COM Add-ins dialog box.

    The Add-in is loaded as a COM Add-in and its load behavior is determined from settings in the registry. Functions in the Add-in cannot be called from formulas in a worksheet.
  • Loaded in both the COM Add-ins dialog box and the Add-ins dialog box.

    Two separate instances of the Add-in are loaded. One instance is loaded as a COM Add-in and the other instance is loaded as an Automation Add-in. The COM Add-in instance uses the load behavior indicated in the registry; the Automation Add-in instance loads on demand. The two instances work independently of one another and do not share global variables.
Because Automation Add-ins are loaded on demand, Excel may attempt to load the Add-in while it is in cell edit mode. Therefore, when you develop an Automation Add-in that supports IDTExtensibility2, you should be careful not to do anything that attempts to change Excel's state while the Add-in loads. For more information, see the following article in the Microsoft Knowledge Base:
284876 BUG: Excel Fails When Automation Add-In Loads
(c) Microsoft Corporation 2001, All Rights Reserved. Contributions by Lori B. Turner, Microsoft Corporation.

Thu?c tính

ID c?a bài: 291392 - L?n xem xét sau cùng: 06 Tháng Mười 2011 - Xem xét l?i: 4.0
Áp d?ng
  • Microsoft Office Excel 2007
  • Microsoft Excel 2002 Standard Edition
T? khóa: 
kbautomation kbinfo kbmt KB291392 KbMtvi
Máy d?ch
QUAN TRỌNG: Bài vi?t này đư?c d?ch b?ng ph?n m?m d?ch máy c?a Microsoft ch? không ph?i do con ngư?i d?ch. Microsoft cung c?p các bài vi?t do con ngư?i d?ch và c? các bài vi?t do máy d?ch đ? b?n có th? truy c?p vào t?t c? các bài vi?t trong Cơ s? Ki?n th?c c?a chúng tôi b?ng ngôn ng? c?a b?n. Tuy nhiên, bài vi?t do máy d?ch không ph?i lúc nào c?ng hoàn h?o. Lo?i bài vi?t này có th? ch?a các sai sót v? t? v?ng, cú pháp ho?c ng? pháp, gi?ng như m?t ngư?i nư?c ngoài có th? m?c sai sót khi nói ngôn ng? c?a b?n. Microsoft không ch?u trách nhi?m v? b?t k? s? thi?u chính xác, sai sót ho?c thi?t h?i nào do vi?c d?ch sai n?i dung ho?c do ho?t đ?ng s? d?ng c?a khách hàng gây ra. Microsoft c?ng thư?ng xuyên c?p nh?t ph?n m?m d?ch máy này.
Nh?p chu?t vào đây đ? xem b?n ti?ng Anh c?a bài vi?t này:291392

Cung cấp Phản hồi

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com