免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
Excel VBA 學習總結(jié) - 開發(fā)模式

  我學習的教程幾乎都是講解語法在前,羅列對象在后,給一堆例子在最后。我在學習的過程中,這些很重要,但不是最重要的,我覺得最重要的事是要教會我怎么解決實際的問題。所以我總結(jié)的時候,單獨拿出開發(fā)模式這一塊,我決定要重點強調(diào)實際應用的作用??v觀我所學的C/C++/C#,VB語言,我覺得學會簡單的語法并不難,難的是應用所學去解決實際的問題。我解決問題的一般步驟是:分析問題規(guī)模,采用合適的算法,引用恰當?shù)念悗?,然后是使用語法去表述并解決問題。

  VBA的開發(fā)模式其實也是解決問題的一般步驟。典型的VBA開發(fā)步驟是這樣的,先錄制符合條件的宏,然后修改宏,去掉冗余的步驟,調(diào)整代碼,最后是部署宏。實際上這個開發(fā)的過程在VBA中是通吃一切的"萬金油",學習走的是這個過程,開發(fā)走的還是這個過程。哪怕是啥都不懂的人,只想重復完成一些單調(diào)的任務,也是輕車熟路的完成這個自動化的過程。

  以下的操作過程是在Excel2010中完成的,其它的版本基本都差不多。

1. 錄制宏

  錄制宏很簡單,操作步驟如下:

  • 在"View" Ribbon菜單下,點擊"Macros" Tab下的"Record Macro..."按鈕。如下圖:

  • 在彈出的宏設置框中,設置宏的名字,快捷鍵,保存位置,說明信息,然后點擊"OK"按鈕開始錄制。如下圖:

  • 做你想做的事。

  • 錄制宏的時候,"Record Macro..."按鈕會變成"Stop Recording..."按鈕,點擊它停止錄制。如下圖:

  說明:宏的保存位置有3種:如果保存宏到當前文檔中,那么這個宏只能在當前文檔中使用;如果保存到新文檔中,這個意思很直接;最后一個是保存到個人宏工作簿中,這個說明這個宏可以被所有的文檔使用。個人宏工作簿是一個隱藏的工作簿,如果本機沒有的話,Excel會自動創(chuàng)建的。打開Excel文檔后,Excel也會打開這個個人宏工作簿,你可以選擇顯示/隱藏這個工作簿。

2. 修改宏

  打開宏列表(快捷鍵"Alt+F8"),可以看到所有打開Excel文檔中的宏。如下圖:

  選擇宏,然后點擊"Edit"就可以打開VB編輯器,編輯宏。在這個窗口中也可以刪除錄制的宏。

3. 運行/部署宏

  錄好宏以后,我們可以通過以下幾種方式運行這個宏:

  • 在宏列表窗口中,選中宏,點擊“Run”運行宏;這種方式很然很不方便,很少人會用。

  • 如果設置了宏快捷鍵的,在任意時候,按快捷鍵運行宏;這種方式比較方便,但是快捷鍵還是很難記的。

  • 在Sheet中拖入一個Button控件(其它控件也是可以的,自己可以多嘗試),當讓你選擇宏的時候,你把宏分配給它即可。然后鼠標點擊別的地方,等控件脫離編輯狀態(tài)后,點擊就生效。當然不選也是可以的,后期可以鼠標右擊控件,然后選擇"Assign Macro..."分配宏。這種最常用,也是開發(fā)中主流的使用方式。

  • 自定義Ribbon菜單,把宏加到菜單中(也可以加到快捷菜單中,老版本中也可以加到Toolbar中)。這種方式也比較常見,就是設置有時候麻煩。需要右擊Ribbon菜單的空白部分,選擇自定義Ribbon菜單等選項,然后選擇宏,最后加到相應的位置就可以了。

  其實,宏的保存位置和運行方式就決定了宏的部署情況,這個針對不同的用戶,這個選擇是不一樣的。

  下面我也簡單總結(jié)一下VBA主要的開發(fā)工具與常用的類型。

a. VB編輯器

  在宏列表窗口中,點擊"Edit..."就可以進入宏的編輯器:VB Editor;也可以直接按快捷鍵Alt+F11打開VB編輯器。如下圖所示:

  這個編輯器與大多數(shù)的IDE基本都是一樣的,都包含菜單,代碼編輯區(qū),工程文檔視圖,屬性窗口等等,這里就不詳述了,試試就知道了。

b. Form控件與ActiveX控件

  這兩個是有區(qū)別的,F(xiàn)orm控件可以直接拖到Sheet中使用,而ActiveX控件是不可以直接在Sheet中使用的,它是放到User Form中使用的。Form控件的使用也比較簡單,通常就是分配宏,或者點擊右鍵菜單(基本上要拖動,或者設置Form控件的屬性,都是要在空間上單擊右鍵,讓控件進入開發(fā)狀態(tài);設置好以后鼠標打擊其它的單元格,就可以讓Form控件進入使用狀態(tài))中的“Format Control...”做一些簡單的設置。而ActiveX控件是開發(fā)中用的比較多的,配合User Form,可以提供相當專業(yè)的窗體應用程序體驗。

c. User Form

  為什么要使用User Form呢?對于很多的用戶而言,直接在Excel中錄入程序用到得數(shù)據(jù),或者直接通過簡單的InputBox,或者MsgBox是不夠的,有時候以窗口的形式呈現(xiàn)這些項會更方便。使用User Form也比較簡單,基本與別的IDE是一樣的,拖放控件上去,設置相關(guān)屬性,編寫相關(guān)的事件,就OK了。

這里有個小技巧:在往User Form上畫控件的時候,如果雙擊某個Toolbox上的控件,那么這個控件就會一直被選中,如果是重復畫同一個類型的控件,這樣比較方便。畫完后,單擊Toolbox上的控件,就會取消選中。

對于User Form:

  • 最重要的幾個屬性是:Name(設置名稱), Caption(設置標題)。

  • 最重要的幾個操作是:Show(顯示窗體,窗體的方法,一般在需要使用窗體的時候調(diào)用), Unload Me (關(guān)掉本窗體,一般在窗體的事件里用于關(guān)掉自己)。

  • 最重要的幾個事件:Activate(用于初始化窗體),QueryClose(窗體關(guān)閉時觸發(fā),取消窗體關(guān)閉的最后機會,一般可用于判斷窗體的關(guān)閉條件是否成立)。

對于ActiveX控件:

  • 最重要的幾個屬性是:Name(名稱), Caption(標題), Accelerator(快捷鍵), TabIndex(Tab順序), Enabled(是否啟用)。還有每個控件獨有的一些屬性。

  • 事件基本都差不多重要,需要使用哪個就用哪個

d. Module 與 Class Module

  簡答的說,Module就是放代碼的地方,并沒有什么特殊的意義,放在其中的成員和方法,Private的只有本Module中的方法可訪問,Public的則程序中所有的Module都可以訪問,而且訪問的都是同一個值,修改以后,其他人得到的就是修改后的值。

  而Class Module就是面向?qū)ο笾袑ο蟮母拍盍?,它封裝了成員和方法,可以New不同的實例(實例聲明的類型是Object),實例有各自單獨的成員區(qū)間,每個實例之間互不干擾。調(diào)用類的屬性和方法的時候,都要通過實例去調(diào)用。

  所以簡單的操作直接用Module就可以了,而復雜,重用度高的就可以封裝成對象,以便多次重復使用。

e. 調(diào)試與運行程序

  • F5直接運行當前鼠標所在的方法/窗口。F8, Shift+F8, Ctrl+F8單調(diào)。F9設置斷點。

  • Debug.Print可以在Immediate Window (快捷鍵Ctrl+G)輸出變量值。也可以在該Window中直接輸入表達式,查看值。

  • 可以通過Watch Window,Locals Window查看變量值。

 

謹記:對象不決問Google,無從下手錄制宏。

 

謹記:不要嘗試用VBA去解決所有問題,VBA有自己擅長的領(lǐng)域,也有它不擅長的場合。

本站僅提供存儲服務,所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
【開發(fā)】關(guān)于VBA的那些事
多種運行Excel宏的方法
Excel VBA入門教程,用窗體制作一個進度條,只需要兩個控件即可
Excel VBA入門教程,制作一個登入界面,窗體控件實操講解
VBA系列講座(3):學習控件
WPS JSA 宏編程(JS):1.初識
更多類似文章 >>
生活服務
分享 收藏 導長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服