4.1.1 VBA編程與炒菜
菜是怎麼炒出來的
巧婦難為無米之炊,再聰明伶俐的媳婦只守著空灶台也煮不出香噴噴的飯菜,必須打開冰箱,取出瘦肉、蔥、蒜……然後洗、切、炒,最後大勺一揮,一盤色香味美的魚香肉絲才能擺上飯桌,如圖4-1所示。
圖4-1 炒菜的步驟
編程就如炒菜,盤子裡的菜就是按炒菜的方法對材料進行加工寫出的程序。
VBA編程需要的源材料就是VBA裡的對象。
想要編寫VBA程序,首先要懂得如何打開「冰箱」,在「冰箱」裡找到合適的東西,取出並加工它。
這個「冰箱」在Excel裡稱為對像模型。
什麼是對像模型
就像廚房裡的東西一樣,Excel中的對像總是層次分明地組織在一起,一個對象可以包含其他對象,也可以包含在其他對像裡(參閱3.4節)。
這種對象的排列模式稱為對像模型。Excel中的所有對象都可以在對像模型裡找到。
怎麼打開對像模型
圖4-2 打開對像類型
4.1.2 VBA是怎麼控制Excel的
VBA通過操作不同的對象來控制Excel
作為一個Excel用戶,每天都在重複打開、關閉工作簿,輸入、清除單元格內容的操作,這些操作都是在操作對象。
是的,我們每天都在用動作編程。
實際上,VBA程序就是用代碼記錄下來的一個或一組操作。如想在「Sheetl」工作表的A1單元格輸入數值100,完整的代碼為:
無論是用動作還是用代碼,都是在操作對象。
所以,編寫VBA程序,就是利用VBA語句引用對象並有目的地操作它。
4.1.3 應該記住哪些對像
VBA編程就像炒菜
菜市場的菜花樣繁多,買菜時應該買什麼?紅燒魚很香,但家裡從來不吃,買菜時要不要買?
買菜只買需要的,而不用買下整個菜市場。認識對象也是如此,並不用記住所有的對象,只需要熟悉它的結構和組成,記住經常的即可。對於那些不常用或根本不會用到的,只要在需要用到時能熟悉打開幫助菜單,像查字典一樣找到它就夠了。
偶爾那麼一天,忽然想吃紅燒魚了,出門打個的,告訴司機:「菜市場!」一去一來,十五分鐘,搞定!
應該記住哪些常用的對象
不買的菜堅決不買,要買的也千萬不要落下。
菜市場,一去一來,十五分鐘,的確不遠。
但是菜洗好了,發現沒有買油,然後出門打的……
十五分鐘後,炒菜炒到一半,卻發現沒有買辣椒,於是,再一次出門打的……
又十五分鐘後,菜快炒好了,忽然發現沒有買蔥……
最後的最後,魚香肉絲終於端上了餐桌。來之不易的飯菜,真不簡單。
存在冰箱裡的當然是生活常用品。
學習VBA,需要記住哪些常用的對象?想一想,日常工作中經常會操作哪些對像(見表4-1)。
表4-1Excel VBA常用的對象