微軟的開發文件不斷的統合,目前最新版的基本上只有線上手冊,放在:
https://docs.microsoft.com/zh-tw/visualstudio/vsto/getting-started-office-development-in-visual-studio
早期的文件中,建議務必取得的是 Office 2003 SP3 內含的附屬文件,從安裝完成檔案抽出來,可以更方便的運用。
早期多數人開發過程中很少按下 F1 瀏覽離線版的線上手冊,更不要說備份下來隨時翻找,我自己當時也沒做,但因為有相容測試需求,有留虛擬機,還好可從虛擬機裡面抽出來。
後續微軟文件大多數改線上版,為了配合線上版,反而短少物件架構圖,有點可惜。
我自己是定時會將新的線上手冊複製下來統合在一個目錄:
再使用 Windows 內建的快速工具列做超連結,以便隨時查閱:
下面列舉幾個需要它的截圖。
我覺得最重要的功能就是有 Office 所有物件的物件架構圖。這在 Office Automation 開發中非常發便,甚至不限於 VBA/VB6/VBScript 開發,對 .Net framework 下支援 COM 的各語言也非常方便,例如 VBNET/C# 等,對於 C# 來說,還是要呼叫 Office COM 內的方法、屬性、使用事件等,但對於新版的線上手冊來說,沒有物件架構圖很不容易找到對應的需求。
中文的線上說明,這部分在新的線上手冊效果遞減,早期線上手冊放在 MSDN 下,幾乎是只有英文說明,當然多數的開發者能閱讀英文說明,但畢竟沒有中文說明更親切。
我比較喜歡當時的次要查詢,例如下圖,點擊多重物件可以跳出 Document 下的各子物件或集合物件,新版的線上手冊都統合到屬性去,找起來比較困難。
操作快速。離線式的線上手冊,永遠比在線式的線上手冊快,而且可以在無網際網路情況下開發,特別適合於有管制網路的環境。
例如,Access 附 SQL 語法說明手冊,入門 SQL 語法,這個線上手冊很不錯,雖然不是 ANSI SQL 1992 以後相容語法,但是差異不大。而且也可用來比對 Access / Excel 透過 OLEDB / ODBC 不同語法的差異,這個檔是相容於 OLEDB 的。
Office 2003 SP3 是有完整中文線上手冊說明的最後一版,新版的線上手冊就多數是英文手冊了,要看中文版可能要到本篇最前面介紹的網址看。
例如 Visio 2013 中文版只有英文線上手冊,就沒有物件架構圖,我覺得不好用。
新版 Office 仍有少數中文線上手冊,例如部分人愛用的條碼控制項。
如果不是使用 VSTO ,除了 Office 內件線上手冊外,Script 5.6 的線上手冊也很重要。
例如有名的物件 FileSystemObject(FSO) 就可以在 VBA 內使用。
VB6/VBA/VBScript 對於檔案處理並不友善,例如先前在這篇
[VBA] Excel 安全性調整後,跨檔案所需要的變更
內部教育訓練的案例3 截圖中,需要整理檔案清單給業主,或是資訊循環中,需要整理系統文件的檔案清單給內稽、外稽檢查,那麼這時候使用 Excel VBA 做成一個常用巨集檔,就會很方便的產生檔案清單。
例如用教育訓練的案例3 產生這篇文章線上手冊的檔案清單如下圖。
案例3 呼叫 FSO 的 myDir 。
除 FSO 外,也可以在 Script 5.6 找到 JavaScript 的說明跟通用運算式的說明。
VB6/VBA/VBScript 裡面的 Find/Replace 是比較陽春的掃描搜尋方式,而 JavaScript 直接就是使用通用運算式搜尋,無疑效能、彈性提高很多,所以要在 VBA 內使用通用運算式,要參照 Script 5.6 手冊。
另外還有一些當年很好用,現在幾乎是廢棄的線上說明。
比如說 OWC 當年是一個很好的 COM 元件,可用在 VB6 / VBA / VBScript / VBNET 中,可用在 ASP/ASP.NET Web 的 Server 端輸出圖形,也可以用在 client 端當 ActiveX 用,簡直百搭,SQL Server 2008 R2 以前內建支援 OWC,但也隨著時代淘汰。
當年還有一個 MODI 元件很有用,可以給 VB6/VBA/VBScript/VBNET 等支援 COM 語言使用,例如將一張掃描的圖片做 OCR 轉成文字,但在 Office 2007 被微軟淘汰,用 OneNote 取代,當年 OneNote 的辨識率還不如 MODI。
微軟有很多很不錯的離線式的線上手冊,多數人沒看過就消失,對於開發者來說,這都是一些很重要的參考文件,如果需要,不妨在虛擬機上安裝舊版的 Office ,把相關文件備份出來參考。