這里,我將會(huì)使用Visual Studio 2010 所帶的VSTO(Visual Studio Tools for Office)來(lái)開(kāi)發(fā)這個(gè)插件,此外,Excel 2007也是必須的。
ps:插件(AddIn),實(shí)際上是一個(gè)組件(COM),插件安裝到系統(tǒng)后,會(huì)在Office的對(duì)應(yīng)目錄HKEY_CURRENT_USER\Software\Microsoft\Office\Word\Addins(以WORD為例)上標(biāo)記此插件的名稱,加載方式等,而在組件注冊(cè)的過(guò)程中此插件的的執(zhí)行程序的全路徑也會(huì)在注冊(cè)表中標(biāo)記,按照插件ID在注冊(cè)表中查找,就可以找到這些注冊(cè)表項(xiàng)。其實(shí)用VS.NET來(lái)開(kāi)發(fā)Office插件,是不需要關(guān)心這些問(wèn)題的,因?yàn)樵诮⒉寮?xiàng)目的同時(shí),會(huì)建立一個(gè)此插件項(xiàng)目的安裝項(xiàng)目,用此安裝項(xiàng)目就可以自動(dòng)執(zhí)行在注冊(cè)表中添加這些項(xiàng)目。
步驟:
1、打開(kāi)Visual Studio 2010。文件》新建》項(xiàng)目,新建一個(gè)項(xiàng)目,建立一個(gè)共享的插件,選擇Shared Add-in。
2、確定項(xiàng)目目錄之后,點(diǎn)擊ok,會(huì)出現(xiàn)插件生成向?qū)А?/p>
選擇開(kāi)發(fā)語(yǔ)言,然后點(diǎn)擊Next》
選擇需要嵌入這個(gè)插件的應(yīng)用程序。這里選擇Excel,點(diǎn)擊Next》
在兩個(gè)編輯框中輸入插件的名稱和描述,點(diǎn)擊Next》
第一個(gè)選項(xiàng),表示是否在應(yīng)用程序啟動(dòng)的時(shí)候,啟動(dòng)這個(gè)插件;
第二個(gè)選項(xiàng)表示這個(gè)插件是所有用戶使用,還是僅僅當(dāng)前用戶使用。
3、開(kāi)始編寫(xiě)Hello Away!
在插件中需要對(duì)Excel對(duì)象進(jìn)行操作,需要首先添加一個(gè)引用。
選擇COM頁(yè),在下面的組件中選擇Microsoft Excel 12.0 Object Library。(excel版本號(hào),2003是11.0,2007是12.0,2010是14.0)
添加成功之后,在插件項(xiàng)目中的Connect.cs文件中,添加using
插件項(xiàng)目中的Connect.cs,對(duì)Excel的操作就是從這個(gè)文件開(kāi)始的。
其中OnConnection()事件是啟動(dòng)插件的地方。
首先我們要獲得Excel.Application這個(gè)類,在OnConnection()中已經(jīng)得到applicationObject,在這里轉(zhuǎn)化一下就可以了。
Excel.Application excelApp=(Excel.Application)applicationObject;
接著,我們就可以綁定excelApp這個(gè)對(duì)象的事件了,我們可以通過(guò)智能感知,很方便的得到excelApp可以使用的事件。
在這里我們綁定SheetSelectionChange,選中它,點(diǎn)擊鼠標(biāo)。
在這個(gè)事件后面添加+=,系統(tǒng)會(huì)自動(dòng)提示要增加的內(nèi)容。
提示出現(xiàn)后,點(diǎn)擊Tab鍵,會(huì)自動(dòng)完成這些代碼
再點(diǎn)擊一次Tab鍵,將需要綁定的事件excelApp_SheetSelectionChange也自動(dòng)完成。
老規(guī)矩,彈出一個(gè)消息框就對(duì)了。
要彈出消息框,首先要添加引用,用同樣的方法添加System.Windows.Forms.
然后添加using
等待Rebuild成功之后,就可以Install安裝這個(gè)插件了。
安裝好之后,打開(kāi)Excel體驗(yàn)一下了。
當(dāng)點(diǎn)擊另一個(gè)單元時(shí),就會(huì)彈出一個(gè)消息框“ Hello Away ! ”。
聯(lián)系客服