戲說Excel系列(二)蟑螂傳奇 原創(chuàng)文/寒樹Office圖/寒樹Office 點擊加載圖片 引文:VBA是Excel突出重圍,打敗對手的大殺器,Excel取得巨大成功的重要原因。Excel從1993年就開始支持VBA,擁有25年的支持生命周期,VBA就是Office開發(fā)生態(tài)系統(tǒng)中的“無法撼動的蟑螂”。蟑螂是成功的,因為它們很簡單。 VBA的起源 點擊加載圖片 Lotus1-2-3,首次出現(xiàn)宏功能 Lotus1-2-3是最早具備一定開發(fā)能力的“電子表格”,其最輝煌的成就不是多功能的集成,而是其推出的“宏”功能。最初“宏”只作為產(chǎn)品的調(diào)試和測試機制,后來開發(fā)人員才意識到“宏”的價值,在最終版本中添加了“宏”功能。“宏”為非程序員編程及表格自動化提供了簡便有效的幫助,幫助Lotus1-2-3成為“電子表格”市場的領(lǐng)軍產(chǎn)品。 Excel4.0,開始引入XML宏 XML宏只能在“宏表工作表”中編寫代碼,代碼保存在后綴為.xlm的單獨文件中,因此被稱為XLM宏。XLM宏語言包括函數(shù)調(diào)用以及上百個內(nèi)建函數(shù),使用戶可以通過編程控制Excel的各種操作,因為如此吸引了一些具備很強編程能力的人創(chuàng)建復(fù)雜的程序,但是XLM宏語言的在使用上相當(dāng)?shù)膹?fù)雜,因此遠(yuǎn)離了廣大的群眾用戶。 Excel5.0,推出VBA通用宏 此次微軟大膽引入VBA宏語言,VBA繼承了VB很大一部分編程方法。VBA是一款功能強大的工具,它使Excel形成了獨立的編程環(huán)境。使用VBA和宏,可以把手工步驟自動化,VBA也允許創(chuàng)建窗體來獲得用戶輸入的信息。作為Office通用的宏語言,VBA比XLM更簡單,更強大、更有效率。Excel97發(fā)布之后VBA最終發(fā)展成為主流的宏語言。 XML宏“僵而不死” XLM宏從Excel4開始被引入,但是從Excel5及更高版本開始被更強大易用的VBA所替代,從此不再有本質(zhì)上的更新。 點擊加載圖片 命令宏 它的功能一般都和菜單選項或其它Excel命令相同。和通常的Excel命令相似,命令宏的最顯著特點是可以影響工作環(huán)境(工作表、工作區(qū))。不管是格式化范圍、打印工作表或建立通用菜單,都能用命令宏來做。 函數(shù)宏 它和內(nèi)置的函數(shù)相似,他的顯著特點是可以接受參數(shù),并在運處后返回結(jié)果。設(shè)計比較好的函數(shù)宏對當(dāng)前環(huán)境沒有影響。 子程序宏 它是命令宏和函數(shù)宏的結(jié)合。它象函數(shù)宏那樣能帶參數(shù)返回結(jié)果,又像命令宏那樣能影響工作環(huán)境。子程序宏經(jīng)常被其它宏引用,主要目的是簡化宏代碼。 VBA宏“老兵永不死” 點擊加載圖片 原則一:五分鐘原則 VBA只做需要為Office生態(tài)而做的事,而不是更多。VBA做了它的創(chuàng)造者為其市場定位所做的事情:讓使用者以較少的經(jīng)驗快速實現(xiàn)有限的功能。這絕不意味著開發(fā)復(fù)雜應(yīng)用的重型功能。復(fù)雜的事情,比如處理線程,是不合適的。如果五分鐘內(nèi)無法解決一個特定功能,應(yīng)該考慮一下其它種類開發(fā)技術(shù)。 原則二:最快學(xué)習(xí)原則 VBA成功的另一個關(guān)鍵是其有限的功能集,縮短了學(xué)習(xí)曲線。成為一名優(yōu)秀的VBA程序員所花費的時間比成為一名優(yōu)秀的C#程序員所需的時間要少得多,而這正是早期Office開發(fā)者的主要選擇。如果是以自動化Office軟件操作為目的,以快速上手Office操作為目標(biāo),VBA是最佳選擇。 原則三:免寫代碼原則 最后Office提供了VBA宏錄制(macrorecorder)的支持,可以錄制大多數(shù)重復(fù)性的工作,以最簡單的方式并自動生成代碼。宏錄制是多數(shù)非程序員出身職場小白的最佳選擇,VBA也成為了唯一選項。 VBA,無法撼動的蟑螂 點擊加載圖片 VBA是Office取得巨大成功的重要原因之一,使用VBA可以完成很多事情,基于Excel的VBA小程序更是不計其數(shù)。Excel從1993年就開始支持VBA,擁有25年的支持生命周期,VBA就是Office開發(fā)生態(tài)系統(tǒng)中的“無法撼動的蟑螂”。蟑螂是成功的,因為它們很簡單。VBA通過抽象底層Windows操作系統(tǒng)的復(fù)雜性來實現(xiàn)其目標(biāo)。VBA的語言入門門檻較低,而這些用戶利用VBA解決的正式工作中關(guān)鍵問題。簡單的事情很容易完成。因此,VBA程序大多作為部門內(nèi)部或個人使用的小工具。 TimeLine/史記.宏 點擊加載圖片 1983,電子表格首次引入宏功能 1992,微軟開始引入XML宏 1993,偉大的VBA橫空出世 |
|