Access愛好者以會Vba為榮。我覺得這不是好現象。vba只是vb的子集,有著很多限制,比如不支持繼承,不支持指針,不支持子界類型等。使用vba操作office 家族之外的數據結構是非常困難的。vba只是Access的一個特性。實際上沒有vba微軟也可以照舊大賣access。有了vba,只不過使access應用更加個性化。不要把太多的功能加在vba之上,盡管它能夠實現,這樣做你會非常累的。如果你不僅僅是access愛好者,還是編程愛好者,那麼除了vba之外,你還應該學習另外一門語言(Pascal或C或匯編),會發現一個非常廣闊的天地在你面前敞開。
Access的精髓在於它的快速構架數據庫應用的能力,一個Access的熟練者可以在一天時間內完成一個小型的完整的數據庫應用,從表到窗體到報表到菜單。其實你也可以發現Northwind裡面的代碼是非常少的。
我們日常工作生活中最常遇的還是微型數據庫,記錄數不超過百萬條。在這種小型系統中,安全性、並發性等都沒有太多的要求,最需要關注的地方就是時間與花費。而Access恰好能夠非常快地構架此類系統,省時省錢。
如果你真的想學習vba,我建議你不要從access中開始學,而是從VB開始學。
學習Access,最最重要是要學會如何盡可能快的不用vba開發微型數據庫系統。
另外,我覺得有必要擴展Access窗體向導與報表向導,用來幫助Access使用者進行快速開發。這也是我今後做Access開發的主要方向,希望有更多高手能夠加進來。