文章編號: 309603 - 上次校閱: 2007年4月11日 - 版次: 4.1 如何在 Visio 中使用 OLE 自動化
在此頁中簡介本文包含關於如何使用 Microsoft Visual Basic 或 Microsoft Visual Basic 的應用程式 (VBA) 來自動化 Microsoft Office Visio2from 其他 Microsoft Office 程式。 Microsoft 僅,為了說明提供程式設計範例,不提供任何明示或默示的保證。這包括,但不限於適售性或適合某特定用途之默示擔保責任。本文假設您已熟悉使用我們所示範的程式設計語言以及建立和偵錯程序所使用的工具。Microsoft 技術支援工程師可以協助解釋特定程序的功能,但它們不會修改這些範例以提供附加功能或建構程序,以符合您特定需求。 自動化的概觀在 Visual Basic 中的自動化 (也稱為 OLE 自動化) 是控制從另一個程式的程序的程式或外部的開發工具。您可以自動化任何程式中含有 Visual Basic 物件模型。物件模型是程式的可用的物件或 Visual Basic 在 公開 的階層式集合。比方說 Microsoft Visio 物件模型包含物件如:
使用者入門本文的程式碼範例示範如何控制 Visio 從 Microsoft Office 2007,Microsoft Office 2003,Microsoft Office 2002,Microsoft Visual Basic 6.0 或任何包含 Visual Basic 開發工具的程式。若要自動化 Visio,請依照下列四個主要步驟執行:
步驟 1: 新增 Visio 型別程式庫的參考如果要將參考加入至 Visio 型別程式庫使用 Microsoft Office 應用程式 (例如 Microsoft Office XP 或 Office 2003,請依照下列步驟執行:
步驟 2: 宣告物件變數若要為特定的 Visio 物件類型,例如 Visio.Application、 Visio.Documents 或 Visio.Page 宣告 Visio 物件變數,維度一變數。明確宣告物件型別就稱為 早期繫結,因為控制器應用程式會連接或 繫結 至 Visio 應用程式在編譯階段 (而不是在執行階段物件。這可讓您存取 Visio 自動清單和即時線上說明,並允許程式碼更有效率地執行。 如需有關物件繫結的資訊,按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的發行項: 138138?
(http://support.microsoft.com/kb/138138/
)
晚期,識別碼,早期繫結類型請盡量在 VB 中的應用程式 下列範例 Visual Basic 引數宣告變數 AppVisio 做為物件型別 Visio.Application:步驟 3: 設定變數若要啟動 Visio,您可以使用下列兩個 Visual Basic 方法:
下列範例引數將 AppVisio 變數設定為使用 [CreateObject Visio 應用程式函式: 您可以使用 InvisibleApp 物件與 CreateObject 函式。嘗試使用的 GetObject 函式將會失敗。無法使用的 Visio 版本早於 Microsoft Visio 2000 中 InvisibleApp 物件。 步驟 4: 使用 Visio 物件、 方法和屬性完成步驟 1 到 3 後,您可以使用 [Visio 物件變數,來自動化 Visio。下列範例巨集會使用自動化來啟動 Visio,建立基本圖] 範本為基礎的一個新繪圖 (文件)、 卸除一個矩形、 新增一些文字和儲存繪圖及結束 Visio。 ?考Microsoft Visio 開發 o 人 h 員 ? 工 u 具 ? Web 站台如需有關如何自動化 Visio 的詳細資訊,請造訪下列 Microsoft 網站]:http://msdn2.microsoft.com/en-us/office/aa905478.aspx
(http://msdn2.microsoft.com/en-us/office/aa905478.aspx)
如需有關如何開發 Microsoft Visio 解決方案,請造訪下列 Microsoft Web 網站:http://msdn2.microsoft.com/en-us/library/aa217846(office.10).aspx
(http://msdn2.microsoft.com/en-us/library/aa217846(office.10).aspx)
Visio 軟體開發套件如果要下載 Visio 2002 軟體開發套件,請造訪下列 Microsoft 網站:http://www.microsoft.com/downloads/details.aspx?familyid=d2845e80-6634-4703-9ad9-7e440ede12d7&displaylang=en
(http://www.microsoft.com/downloads/details.aspx?familyid=d2845e80-6634-4703-9ad9-7e440ede12d7&displaylang=en)
如果要下載 Visio 2003 軟體開發套件,請造訪下列 Microsoft 網站: http://www.microsoft.com/downloads/details.aspx?familyid=557120bd-b0bb-46e7-936a-b8539898d44d&displaylang=en
(http://www.microsoft.com/downloads/details.aspx?familyid=557120bd-b0bb-46e7-936a-b8539898d44d&displaylang=en)
新聞群組下列的對等新聞群組是可用來協助您與 Visual Basic 的其他使用者互動的應用程式:microsoft.public.vb.ole.automation microsoft.public.visio.developer.vba Visual Basic 說明如需有關如何使用該 CreateObject 函式在 Visual Basic 編輯程式中,請按一下 [說明] 功能表上的 [Microsoft Visual Basic 說明,並在 [搜尋] 方塊中輸入 createobject 函式 再按一下 [搜尋] 以檢視所傳回的主題。如需有關如何使用該 GetObject 函式在 Visual Basic 編輯程式中,請按一下 [說明] 功能表上的 [Microsoft Visual Basic 說明,並在 [搜尋] 方塊中輸入 getobject 函式 再按一下 [搜尋] 以檢視所傳回的主題。 這篇文章中的資訊適用於:
機器翻譯重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。 按一下這裡查看此文章的英文版本:309603?
(http://support.microsoft.com/kb/309603/en-us/
)
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。 | 其他資源 其他支援網站社群立即取得協助文章翻譯
|






Windows Live
Facebook
Twitter
Linkedin
Digg it
Yahoo
Delicious
StumbleUpon
Yammer
Reddit
Technorati
FriendFeed
Email


回此頁最上方
