Excel vba入門系列講座

2023-01-19 09:18:05 字數 5130 閱讀 5917

vba入門系列講座

1.1 vba是什麼

直到90年代早期,使應用程式自動化還是充滿挑戰性的領域.對每個需要自動化的應用程式,人們不得不學習一種不同的自動化語言.例如:

可以用excel的巨集語言來使excel自動化,使用word basic使word自動化,等等.微軟決定讓它開發出來的應用程式共享一種通用的自動化語言--------visual basic for application(vba),可以認為vba是非常流行的應用程式開發語言vasual basic 的子集.實際上vba是"寄生於"vb應用程式的版本.

vba和vb的區別包括如下幾個方面:

1. vb是設計用於建立標準的應用程式,而vba是使已有的應用程式(excel等)自動化

2. vb具有自己的開發環境,而vba必須寄生於已有的應用程式.

3. 要執行vb開發的應用程式,使用者不必安裝vb,因為vb開發出的應用程式是可執行檔案(*.exe),而vba開發的程式必須依賴於它的"父"應用程式,例如excel.

儘管存在這些不同,vba和vb在結構上仍然十分相似.事實上,如果你已經了解了vb,會發現學習vba非常快.相應的,學完vba會給學習vb打下堅實的基礎.

而且,當學會在excel中用vba建立解決方案後,即已具備在word access outlook foxpro prowerpoint 中用vba建立解決方案的大部分知識.

* vba乙個關鍵特徵是你所學的知識在微軟的一些產品中可以相互轉化.

* vba可以稱作excel的「遙控器」.

vba究竟是什麼?更確切地講,它是一種自動化語言,它可以使常用的程式自動化,可以建立自定義的解決方案.

此外,如果你願意,還可以將excel用做開發平台實現應用程式.

1.2 excel環境中基於應用程式自動化的優點

也許你想知道vba可以幹什麼?使用vba可以實現的功能包括:

1. 使重複的任務自動化.

2. 自定義excel工具欄,選單和介面.

3. 簡化模板的使用.

4. 自定義excel,使其成為開發平台.

5. 建立報表.

6. 對資料進行複雜的操作和分析.

用excel作為開發平台有如下原因:

1. excel本身功能強大,包括列印,檔案處理,格式化和文字編輯.

2. excel內建大量函式.

3. excel介面熟悉.

4. 可連線到多種資料庫.

用其他語言開發應用程式,一半的工作是編寫一些基本功能的模組,包括檔案的開啟和儲存,列印,複製等.而用excel作為開發平台,則由於excel已經具備這些基本功能,你要做的只是使用它.

1.3 錄製簡單的巨集

在介紹學習vba之前,應該花幾分鐘錄製乙個巨集。

新術語:「巨集」,指一系列excel能夠執行的vba語句。

以下將要錄製的巨集非常簡單,只是改變單元格顏色。請完成如下步驟:

1)開啟新工作簿,確認其他工作簿已經關閉。

2)選擇a1單元格。調出「常用」工具欄。

3)選擇「工具」—「巨集」—「錄製新巨集」。

4)輸入「改變顏色」作為巨集名替換預設巨集名,單擊確定,注意,此時狀態列中顯示「錄製」,特別是「停止錄製」工具欄也顯示出來。替換預設巨集名主要是便於分別這些巨集。

★ 巨集名最多可為255個字元,並且必須以字母開始。其中可用的字元包括:字母、數字和下劃線。巨集名中不允許出現空格。通常用下劃線代表空格。

5)選擇「格式」的「單元格」,選擇「圖案」選項中的紅色,單擊「確定」。

6)單擊「停止錄製」工具欄按鈕,結束巨集錄製過程。

※ 如果「停止錄製」工具欄開始並未出現,請選擇「工具」—「巨集」—「停止錄製」。

錄製完乙個巨集後就可以執行它了。

1.4 執行巨集

當執行乙個巨集時,excel按照巨集語句執行的情況就像vba**在對excel進行「遙控」。但vba的「遙控」不僅能使操作變得簡便,還能使你獲得一些使用excel標準命令所無法實現的功能。而且,一旦熟悉了excel的「遙控」,你都會奇怪自己在沒有這些「遙控」的情況下,到底是怎麼熬過來的。

要執行剛才錄製的巨集,可以按以下步驟進行:

1)選擇任何乙個單元格,比如a3。

2)選擇「工具」—「巨集」—「巨集」,顯示「巨集」對話方塊。

3)選擇「改變顏色」,選擇「執行」,則a3單元格的顏色變為紅色。試著選擇其它單元格和幾個單元格組成的區域,然後再執行巨集,以便加深印象。

1.5 檢視錄製的**

到底是什麼在控制excel的執行呢?你可能有些疑惑.好,讓我們看看vba的語句吧.

1)選擇「工具」—「巨集」—「巨集」,顯示「巨集」對話方塊。

2)單擊列表中的「改變顏色」,選擇「編輯」按鈕。

此時,會開啟vba的編輯器視窗(vbe)。關於該編輯器,以後再詳細說明,先將注意力集中到顯示的**上。**如下:(日期和姓名會有不同)

sub 改變顏色()

』 』 改變顏色 macro

』 xw 記錄的巨集 2000-6-10

』 』with

.colorindex = 3

.pattern = xlsolid

.patterncolorindex = xlautomatic

end with

end sub

將來會十分熟悉這種**,雖然現在它們看上去像一種奇怪的外語。學習vba或程式語言在某種程度上比較像在學習一種外語。

sub 改變顏色():這是巨集的名稱。

中間的以「 』」開頭的五行稱為「注釋」,它在錄製巨集時自動產生。

以with 開頭到end with 結束的結構是with結構語句,這段語句是巨集的主要部分。注意單詞「selection」,它代表「突出顯示的區域」(即:選定區域)。

with :它讀作「選擇區域的的內部」.這整段語句設定該區域內部的一些「屬性」。

其中:.colorindex = 3: 將該內部設為紅色。

注意:有一小圓點,它的作用在於簡化語句,小圓點代替出現在with後的詞,它是with結構的一部分。另外:

紅色被數位化為3.(紅色警戒是否可稱作:3號警戒,嗯?

)有興趣的話,你將3改為其他數字試試看。

.pattern = xlsolid:設定該區域的內部圖案。

由於是錄製巨集,所以,雖然你並未設定這一項,巨集仍然將其記錄下來(因為在「圖案」選項中有此一項,只是你為曾設定而已)。xlsolid表示純色。

.patterncolorindex = xlautomatic:表示內部圖案底紋顏色為自動配色。

end with:結束with 語句。

end sub:整個巨集的結束語

1.6 編輯錄製的**

在上一節,我們錄製了乙個巨集並檢視了**,**中有兩句實際上並不起作用。哪兩句?現在,在巨集中作乙個修改,刪除多餘行,直到和下面**相同:

sub 改變顏色()

』 』 改變顏色 macro

』 xw 記錄的巨集 2000-6-10

』 』with

.colorindex = 3

end with

end sub

完成後,在工作表中試驗一下。你會發現結果和修改前的狀況一樣。在with 語句前加入一行:

range("a5").select

試著執行該巨集,則無論開始選擇哪個單元格,巨集執行結果都是使a5單元格變紅.

現在可以看到,編輯錄製的巨集同樣非常簡單。需要編輯巨集是因為以下三個方面的原因。一:

在錄製**錯而不得不修改。二:錄製的巨集中有多餘的語句需要刪除,提高巨集的執行速度。

三:希望增加巨集的功能。比如:

加入判斷或迴圈等無法錄製的語句。

1.7 錄製巨集的侷限性

希望自動化的許多excel過程大多都可以用錄製巨集來完成.但是巨集記錄器存在以下侷限性.通過巨集記錄器無法完成的工作有:

1)錄製的巨集無判斷或迴圈能力.

2)人機互動能力差,即使用者無法進行輸入,計算機無法給出提示.

3)無法顯示excel對話方塊.

4)無法顯示自定義窗體.

1.8 小結

本學時中,你已經掌握了vba的一些基礎知識,你會錄製巨集、編輯巨集而且了解了錄製巨集的侷限性.你很努力.並且已經為將來學習vba甚至vb等程式語言打下了基礎.

關鍵是你已經了解了乙個謎底,就是說,你了解了什麼是程式設計.下面是些小練習,做完後才可以去玩喲.

思考:1)vba只能用於excel嗎?

2)vba是基於哪種語言?

3)說說excel和vba的關係.

4)為什麼要用巨集?

原文發表時間:未知

<[dvnews_page=(2):處理錄製的巨集]

2.1 為巨集指定快捷鍵

你也許希望為經常使用的巨集指定快捷鍵。快捷鍵是指鍵的組合,當其按下時執行一條命令。例如:ctrl+c

在許多程式中代表「複製」命令。當給巨集指定了快捷鍵後,就可以用快捷鍵來執行巨集,而不必通過「工具」選單。

注意:當包含巨集的工作簿開啟時間,為巨集指定快捷鍵會覆蓋excel預設的快捷鍵。例如:

把ctrl+c指定給某個巨集,那麼ctrl+c就不再執行複製命令。用以下方法可以列印出excel的快捷鍵清單(用a4紙列印共有24頁之多):

1)開啟excel幫助檔案並選擇「目錄」選項。

2)從「使用快捷鍵」資料夾中選擇「」快捷鍵「標題。

3)右擊該標題,從快捷選單中選擇「列印」。

4)選擇「列印所選標題和所有子主題」,單擊「確定」。

可以在建立巨集時指定快捷鍵,也可以在建立後再指定。要在建立(錄製)巨集時指定快捷鍵,只須在錄製巨集時在輸入巨集名後,在「快捷鍵」文字框中輸入相應的鍵。錄製巨集後指定快捷鍵也很簡單,只需選擇「工具」「巨集」,顯示「巨集」對話方塊,選擇要指定快捷鍵的巨集,再單擊「選項」按鈕,通過「選項」對話方塊進行設定。

2.2 決定巨集儲存的位置

巨集可儲存在三種可能的位置:

1)當前工作簿。(只有該工作簿開啟時,該巨集才可用。)

2)新工作簿。

3)個人巨集工作簿。

2.3 個人巨集工作簿

個人巨集工作簿,是為巨集而設計的一種特殊的具有自動隱藏特性的工作簿。第一次將巨集建立到個人巨集工作簿時,會建立名為「"的新檔案。如果該檔案存在,則每當excel啟動時會自動將此檔案開啟並隱藏在活動工作簿後面(在「視窗」選單中選擇「取消隱藏」後,可以很方便地發現它的存在。

)如果你要讓某個巨集在多個工作簿都能使用,那麼就應當建立個人巨集工作簿,並將巨集儲存於其中。個人巨集工作簿儲存在「xlstart」資料夾中。具體路徑為:

c:\windows\profiles\application data\microsoft\excel\xlstart。可以以單詞「xlstart」查詢。

走近孔子系列講座

走近孔子專題講座 山西省祁縣中學張永生 導言 同學們,沒有核的果實無法在自然界生存,沒有公尺粒的稻穗總是揚著無知的頭顱。那麼失卻了魂魄的人呢?我們生活在乙個物質財富不斷增長的年代,在這個浮躁喧嘩的年代,更有可能陷入精神的空虛和靈魂的漂泊,我們是否已被繁華迷了眼,丟了心?當我們把學習看成一件苦差事時,...

高考英語複習系列講座

第一部分 詞彙 test 13 1.you are reading too for me to follow.a.rapid b.fast c.quick d.swift 2.the expression on her face when she hears the bad news.a.recog...

中考作文技法系列講座

一 命題作文 中考命題作文包羅永珍。如 童年回憶 童年瑣事 青春剪影 我在花季 心香一瓣 忘不了他 她 難忘時刻 記一次公升旗活動 走向未來 自強的我 生活感悟 我生活在集體的懷抱裡 山光水色 家鄉變了 世相寫生 記一位平凡的人 溫馨情懷 母親的愛 友誼之花 同學,你不能這樣 從總體來看,中考命題作...