當前位置:首頁 » 編程軟體 » vba編譯器調色

vba編譯器調色

發布時間: 2022-11-28 04:44:37

❶ vba怎樣設置圖片顯示與隱藏

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Target.Address = "$A$1" Then Exit Sub
If Target = 0 Then
ActiveSheet.Shapes.Range(Array("圖片 2")).Visible = msoFalse
ElseIf Target = 1 Then
ActiveSheet.Shapes.Range(Array("圖片 2")).Visible = msoTrue
End If
End Sub

代碼貼在本表的代碼窗中,不是模塊中。圖片 2的名稱請按實際名稱修改,選中圖片,看下地址欄中顯示的名稱是啥就改成啥,比如」圖片 10」

❷ Office VBA編輯器中「調試 > 編譯VBAProject」有什麼用該怎麼用

該功能預編譯當前 VBA 工程中所有的代碼,如有代碼出錯則會編譯不通過並彈出錯誤提示對話框,反之則如你所說沒有任何反應。

每次寫完一個小功能的時候可以通過點擊編譯來檢查潛在的代碼問題,這樣可以確保代碼能夠在運行前不會報錯,同時也方便排錯!

❸ 在VBA中,如何實現調用Excel調色板,並返回選中顏色的值

引用microsoft common dialog control 6.0,添加commondialog控制項,用showcolor方法就可以了。

CommonDialog1.ShowColor
meColor=CommonDialog1.Color'mecolor就是所選取的顏色值


❹ 如何使用VBA,Excel調試技巧

方法/步驟

進入VBA環境,一種通過宏的方式進入vba環境,另一種就是通過工具---宏---visual basic 編輯器進入,如下圖。

雙擊我們要用vba操作的sheet,這里選擇sheet1,如下圖。

在打開的代碼編輯窗口編寫代碼,如下圖所示。

編寫好代碼後,我們按快捷鍵Ctrl+G調出立即窗口(用來顯示debug.print輸出值和調試輸出),如下圖所示。

使用F8快捷鍵單步執行程序,結果如下圖,要求我們激活宏。

這是我們的Excel宏的安全級別太高導致,現在我們調整下宏的安全級別,如下圖。點擊工具--宏---安全性。在安全性對話框中,選中安全級別中或者低,點擊確定按鈕。

關閉文檔,重新打開,打開vba編輯器,點擊F8,結果如下圖。程序就會單步執行,這里為了演示,故意寫了句錯誤語句。

修改語句後,單步執行如下圖所示。我們可以看到i,j的輸出值。

調出監視窗口,操作如下圖。在編輯窗口空白處右鍵點擊,選擇監視添加監視,如下圖。可以將變數或者表達式添加到監視窗口裡,單步調試時,可以觀察變數變化。

調出本地窗口,本地窗口用來查看現有變數的值。操作如下圖所示。這樣我們就有了自己調試vba的環境了,幾個窗口和單步調試,剩下的就是我們要學習一下這門語言了。

❺ Excel2010怎樣打開Vba編輯器

Excel2010具有Vba編輯器,具體打開的方法如下:

一、使用工具:excel2010

二、操作步驟:

1、進入excel2010,點擊「開發工具」中的「Visual Basic」按鈕,如圖:

❻ Vba程序窗口變成這樣了怎麼恢復

在使用VBA編輯器時,如果無意間弄亂了窗口布局,使各窗口不在其默認位置,使用起來有些不便。要恢復默認的VBA編輯器窗口布局,可以用下面的兩種方法:
方法一:手工調整
1.在VBA編輯器中,單擊菜單「工具→選項」,在彈出的「選項」對話框中選擇「可連接的」選項卡,勾選不在默認位置的窗口選項,如「工程資源管理器」、「屬性窗口」等。單擊「確定」按鈕。
2.假如要將「工程窗口」調整到默認的左側位置,用滑鼠左鍵拖動「工程」窗口的標題欄,移動到VBA編輯器的左側邊界,這時「工程」窗口的邊緣會變成灰色細線,松開滑鼠左鍵,「工程」窗口就會被定位到VBA編輯器的左側。
3.用同樣的方法將其他窗口定位到其默認位置。如果定位錯誤可以拖動該窗口標題欄將其拖回到VBA編輯器中央(或雙擊標題欄)再重新定位。如果在第一步「可連接的」選項卡中某個窗口沒有被勾選,當拖動該窗口到VBA編輯器邊界時,就不會出現灰色細線,因而也無法用這個方法來定位該窗口。
方法二:修改注冊表
用這個方法可以恢復默認的VBA編輯器窗口布局,修改前清備份注冊表。
1.關閉VBA編輯器和Excel。
2.單擊「開始→運行」,輸入「regedit」,打開注冊表編輯器。
3.依次展開「HKEY_CURRENT_USER/Software/Microsoft/VBA/6.0/Common 」,在右側窗口中右擊「Dock」,在彈出的快捷菜單中選擇「刪除」。這個名為「Dock」的二進制值保存著VBA編輯器中各窗口的布局信息,刪除後重新啟動Excel時,該值會自動重新創建。
4.重新啟動Excel,按Alt+F11打開VBA編輯器,可以看到已恢復默認窗口布局。

❼ 關於Excel VBA的疑難問題

VBA教程
test-fly 發表於 2006-10-4 9:33:00

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 Selection.Interior
.ColorIndex = 3
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
End With
End Sub

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

Sub 改變顏色():這是宏的名稱。

中間的以" '"開頭的五行稱為"注釋",它在錄制宏時自動產生。

以With 開頭到End With 結束的結構是With結構語句,這段語句是宏的主要部分。注意單詞"selection",它代表"突出顯示的區域"(即:選定區域)。With Selection.Interior :它讀作"選擇區域的的內部".這整段語句設置該區域內部的一些"屬性"。

其中:

.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 Selection.Interior
.ColorIndex = 3
End With
End Sub

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

Range("A5").Select

試著運行該宏,則無論開始選擇哪個單元格,宏運行結果都是使A5單元格變紅.

現在可以看到,編輯錄制的宏同樣非常簡單。需要編輯宏是因為以下三個方面的原因。一:在錄制中出錯而不得不修改。二:錄制的宏中有多餘的語句需要刪除,提高宏的運行速度。三:希望增加宏的功能。比如:加入判斷或循環等無法錄制的語句。

1.7 錄制宏的局限性

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

1)錄制的宏無判斷或循環能力.
2)人機交互能力差,即用戶無法進行輸入,計算機無法給出提示.
3)無法顯示EXCEL對話框.
4)無法顯示自定義窗體.

1.8 小結

本課中,你已經掌握了VBA的一些基礎知識,你會錄制宏、編輯宏而且了解了錄制宏的局限性.你很努力.並且已經為將來學習VBA甚至VB等編程語言打下了基礎.關鍵是你已經了解了一個謎底,就是說,你了解了什麼是編程.下面是些小練習,做完後才可以去玩喲.

2.1 為宏指定快捷鍵

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

在許多程序中代表「復制」命令。當給宏指定了快捷鍵後,就可以用快捷鍵來執行宏,而不必通過「工具」菜單。

注意:當包含宏的工作簿打開時間,為宏指定快捷鍵會覆蓋EXCEL默認的快捷鍵。例如:把CTRL+C指定給某個宏,那麼CTRL+C就不再執行復制命令。用以下方法可以列印出EXCEL的快捷鍵清單(用A4紙列印共有24頁之多):

1)打開EXCEL幫助文件並選擇「目錄」選項。
2)從「使用快捷鍵」文件夾中選擇「」快捷鍵「標題。
3)右擊該標題,從快捷菜單中選擇「列印」。
4)選擇「列印所選標題和所有子主題」,單擊「確定」。
可以在創建宏時指定快捷鍵,也可以在創建後再指定。要在創建(錄制)宏時指定快捷鍵,只須在錄制宏時在輸入宏名後,在「快捷鍵」文本框中輸入相應的鍵。錄制宏後指定快捷鍵也很簡單,只需選擇「工具」「宏」,顯示「宏」對話框,選擇要指定快捷鍵的宏,再單擊「選項」按鈕,通過「選項」對話框進行設置。

2.2 決定宏保存的位置

宏可保存在三種可能的位置:

1)當前工作簿。(只有該工作簿打開時,該宏才可用。)
2)新工作簿。
3)個人宏工作簿。

2.3 個人宏工作簿

個人宏工作簿,是為宏而設計的一種特殊的具有自動隱藏特性的工作簿。第一次將宏創建到個人宏工作簿時,會創建名為「PERSONAL.XLS"的新文件。如果該文件存在,則每當EXCEL啟動時會自動將此文件打開並隱藏在活動工作簿後面(在「窗口」菜單中選擇「取消隱藏」後,可以很方便地發現它的存在。)如果你要讓某個宏在多個工作簿都能使用,那麼就應當創建個人宏工作簿,並將宏保存於其中。個人宏工作簿保存在「XLSTART」文件夾中。具體路徑為:C:\WINDOWS\Profiles\Application Data\Microsoft\Excel\XLSTART。可以以單詞「XLSTART」查詢。

注意:如果存在個人宏工作簿,則每當EXCEL啟動時會自動將此文件打開並隱藏。因為它存放在XLSTART文件夾內。

2.3.1 保存宏到個人宏工作簿

本練習,將保存一個簡單的宏到個人宏工作簿,該宏為文本加下劃線並改為斜體,步驟如下:

1)建立一個名為「HOUR2」的工作簿,選擇"工具"-"宏"-"錄制新宏",顯示"錄制新宏"對話框.
2)輸入"格式化文本"作為宏名.
3)從"保存在"下拉框中選擇"個人宏工作簿".
4)單擊"確定"按鈕.現在進入錄制模式.
5)單擊"斜體"工具欄按鈕.一段時間內,滑鼠出現沙漏,特別是在第一次創建個人宏工作簿時,因為EXCEL在創建該工作簿.
6)單擊"下劃線"按鈕.
7)停止錄制.

2.3.2 使用並編輯個人宏工作簿中的宏

剛才已經保存了一個宏到個人宏工作簿,現在可以在任何工作簿中使用該宏.可按如下步驟操作:

1)關閉所有EXCEL工作簿.
2)任意打開一個EXCEL文件.(EXCEL自動將個人宏工作簿同時打開並隱藏.)
3)在A3中輸入你的名字.
4)選擇"工具"-"宏",顯示宏對話框.現在可以在宏列表中看到"格式化文本"這個宏.
5)選擇"格式化文本"宏,並執行.現在A3單元格中,你的名字變為斜體字還帶有下劃線.選擇"窗口"-"取消隱藏",可以將PERSONAL.XLS顯示出來,其中沒有任何文字,但通過VBA編輯器可以在其中的模塊中找到"格式化文本"這個宏.在VBA編輯器中可以對該宏進行直接編輯或者刪除.如果PERSONAL.XLS中一個宏都沒有,在啟動EXCEL時仍會打開PERSONAL.XLS,這也許是EXCEL存在的一個小毛病.

2.4 將宏指定給按鈕

即使通過快捷鍵可以是宏的執行變快,但是一旦宏的數量多了也難於記憶,而且,如果宏是由其他人來使用,難道你要他們也記住那麼多的快捷鍵嗎?

作為EXCEL開發者,一個主要的目標是為自動化提供一個易於操作的界面."按鈕"是最常見的界面組成元素之一.通過使用「窗體」工具欄,可以為工作簿中的工作表添加按鈕。在創建完一個按鈕後,可以為它指定宏,然後你的用戶就可以通過單擊按鈕來執行宏。在本練習中,將創建一個按鈕,並為它指定一個宏,然後用該按鈕來執行宏。具體步驟如下:

1)打開「HOUR2」工作簿。
2)調出」窗體「工具欄。
3)單擊」窗體「工具欄中的「按鈕」控制項,此時滑鼠變成十字形狀。
4)在希望放置按鈕的位置按下滑鼠左鍵,拖動滑鼠畫出一個矩形,這個矩形代表了該按鈕的大小。對大小滿意後放開滑鼠左鍵,這樣一個命令按鈕就添加到了工作表中,同時EXCEL自動顯示「指定宏」對話框。
5)從「指定宏」對話框中選擇「格式化文本」,單擊「確定」。這樣,就把該宏指定給命令按鈕。
6)在按鈕的標題「按鈕1」前單擊滑鼠左鍵,按下DELETE直到刪除所有文本,輸入「格式化」作為標題。
7)單擊按鈕外的任意位置,現在該按鈕的標題由默認的「按鈕1」變為「格式化」而且被指定了一個宏。
8)試著在某個單元格中輸入文本,單擊按鈕運行該宏。

當滑鼠移動至該按鈕時自動變成手的形狀,如果要改變其大小或標題,只需用右鍵單擊該按鈕就可以進行修改和設置。很明顯,你再也不需記住宏的名字或快捷鍵了,只需按一下按鈕。

2.5 將宏指定給圖片或其他對象

要執行宏有多種方法可以選擇,可以將宏指定給按鈕等控制項,還可以指定給圖片、自定義工具欄、窗體甚至可以將宏指定給某個「事件」,比如單擊工作表,雙擊工作表,激活工作表,打開工作簿等等,「事件」是一個重要的概念,除此而外「方法」「對象」都是將來你會經常接觸到的。現在它們看來十分抽象,但是將來你會很熟悉這些詞語。指定宏到圖片十分簡單,只需單擊某個圖片,單擊快捷菜單中的「指定宏」進行設置即可。

如果不希望在工作表上添加控制項或圖片執行宏,還有一種方法可以選擇:將宏指定給「工具欄按鈕」,可按如下步驟進行:

1)打開「HOUR2」工作簿,選擇「工具」-「定義」,顯示「自定義工具欄」對話框。
2)從「類別」列表框中選擇「宏」,從「命令」列表框中選擇「自定義按鈕」。
3)將「自定義按鈕」拖動到工具欄。
4)右鍵單擊該按鈕,選擇「指定宏」,顯示「指定宏」對話框。
5)選擇「格式化文本」並確定。
6)單擊「關閉」按鈕,關閉「自定義工具欄」對話框。
7)試著在某個單元格中輸入文本,單擊工具欄按鈕運行該宏。

2.6 小結

小結與思考: 宏存放於三個可能的位置。個人宏工作簿存放的位置和特性。執行宏的方式。指定宏是為某個對象的事件指定一個程序,一旦這個對象以該事件激活,系統將運行指定的程序。

常用的對象有:workbook,worksheet,range,cells,圖表,圖片,數據透視表,控制項,窗體,工具欄.每一個對象都有其可以響應的特殊事件(也有一些通用事件如單擊或雙擊等)。如有興趣,可以通過EXCEL幫助文件查詢這幾個詞條。在EXCEL中看到的幾乎都是屬於某個對象,而在EXCEL中所做的許多工作,如移動一下滑鼠等等,都可能觸發了一個事件。下一學時我們將共同學習「控制項」。

3.1 EXCEL開發過程簡介

需要對以下問題有個大致的概念.
1)誰使用-----這決定了程序的操作難度及界面感觀.
2)數據來源和保存在哪裡-----這決定了程序的結構.
3)如何操作-----這將決定程序的界面和細節.
4)數據處理的結果-----最終決定程序的價值.

3.2 認識不同的控制項

開始時請關閉所有工作簿,打開一個新工作簿並另存為"HOUR3".在工具欄上單擊滑鼠右鍵,從快捷菜單中選擇"窗體",顯示"窗體"工具欄.其中有16個控制項,只有9個可放到工作表內。
1)標簽:它用於表現靜態文本。
2)分組框:它用於將其他控制項進行組合。
3)按鈕:用於執行宏命令。
4)復選框:它是一個選擇控制項,通過單擊可以選擇和取消選擇,可以多項選擇。
5)選項按鈕:通常幾個選項按鈕組合在一起使用,在一組中只能選擇一個選項按鈕。
6)列表框:用於顯示多個選項並從中選擇。只能單選。
7)組合框:用於顯示多個選項並從中選擇。可以選擇其中的項目或者輸入一個其它值。
8)滾動條:不是你常見的來給很長的窗體添加滾動能力的控制項,而是一種選擇機制。例如調節過渡色的滾動條控制項。包括水平滾動條和垂直滾動條。
9)微調控制項:也是一種數值選擇機制,通過單擊控制項的箭頭來選擇數值。例如改變Windows日期或時間就會使用到微調控制項。

3.3 向工作表添加控制項

用EXCEL設計界面十分簡單,要將控制項添加到工作表上,可以按以下步驟操作:
1)創建新工作簿並另存為"HOUR3",顯示"窗體"工具欄.
2)選擇"標簽"控制項.
3)將滑鼠定位到E1,此時滑鼠變成小十字.
4)按下左鍵,拖動大約四個單元格長度,放開滑鼠左鍵.如果希望控制項大小易於控制,可在創建該控制項時按下ALT拖動.
5)在標簽1上單擊右鍵,選擇"編輯文字",現在可以輸入文字.完成後,單擊任何單元格退出文字編輯.
6)通過以上步驟可以添加其它控制項到工作表中,不再贅述.

3.4 設置控制項的特性

設置控制項的特性,可以按以下步驟操作:
1)選中先前創建的復選框控制項,如果沒有馬上創建一個.
2)右擊該控制項,選擇"控制"選項卡.
3)在"單元格鏈接"中輸入A1並確定.
4)單擊任意單元格,退出設置.
5)用滑鼠左鍵單擊復選框,A1出現TRUE,這意味著該控制項被選中.再次單擊該控制項,A1出現FALSE.
6)選擇剛才創建的滾動條控制項.並調出"設置控制項格式"對話框.
7)在"單元格鏈接"中輸入A3並確定.
8)在滾動條外任意單元格單擊滑鼠左鍵,使滾動條不被選擇.
9)用滑鼠單擊滾動條上的箭頭,則A1的數值增加1,繼續單擊則A1的數值繼續增加.
10)保存並關閉該工作簿.

3.5 給控制項命名

當創建一個控制項時EXCEL會自動給它指定一個名字,但不便於理解和記憶,為控制項取名的方法基本和給單元格或區域取名的方法相同.選中某個控制項,再在位於公式欄上的"名字"編輯框輸入控制項名字.這樣就給控制項更改了名字.

3.6 使用用戶窗體

如果希望創建專業級的應用程序,並且方便用戶輸入數據,那麼應該使用用戶窗體.用戶窗體可以作為程序的對話框和窗口.向用戶窗體添加控制項基本類似於向工作表添加控制項,然而第一步要創建一個用戶窗體.這可以通過VBA編輯器實現.具體按以下步驟操作:
1)打開"HOUR3"工作簿,選擇"工具"-"宏"-"VBA編輯器",打開VBA編輯器.
2)在VBA編輯器中選擇工具欄上的"插入用戶窗體"按鈕或者選擇"插入"菜單,從下拉菜單中選擇"用戶窗體"

現在,VBA編輯器中出現一個名為"USERFORM1"的窗體,"控制項工具箱"同時出現,在其中有許多已經熟悉的控制項,另外還有一些新的控制項.

這些新的控制項是:
A)切換按鈕:該控制項如果被選中,那麼會保持被按下的狀態.如果再次單擊它就恢復為沒有按下的狀態.EXCEL工具欄中有幾個這樣的按鈕,例如:"全屏顯示","加粗","下劃線"以及"窗體"工具欄中的"切換網格"等.
B)選項卡條(TabStrip):它是包含多個選項卡的控制項.通常用來對相關的信息進行組織或分類.例如:你也許希望用選項卡條來顯示各個地區的銷售信息,可以給每個地區設置一個選項卡.在默認時,選項卡包含兩頁,分別叫做TAB1和TAB2,可以添加更多的選項卡.
C)多頁:外觀類似選項卡條,是包含一頁或多頁的控制項.選項卡條給人相似的外觀,而多頁控制項的各頁包含各自不同的控制項,有各自不同的布局.多頁的例子很多,例如:"設置控制項格式"對話框和"工具"菜單中的"選項"對話框.以及"格式"菜單中的"單元格..."對話框.
D)圖像控制項:它允許向窗體上放置圖片.圖片格式須為 :*.bmp,*.cur,*.gif,*.ico,*.jpg,*.wmf.
F)RefEdit:這是工具箱中默認情況下的最後一個控制項。它外觀象文本框,通過這個控制項可以將用戶窗體折疊起來,以便選擇單元格區域。還記得在使用fx「粘貼函數」時的情況嗎?

通過實踐,我們會逐漸掌握每個控制項的特性,這的確需要花時間,但不必死記硬背。

在對用戶窗體設計得滿意時,可以對其進行預覽,方法是在VBA編輯器中選擇該窗體,單擊「運行」菜單中的三角符號「運行子過程/用戶窗體」,三角符號在VBA工具欄上也可能看得到,旁邊是一個垂直的等於符號,最右邊是個小正方形符號,它們類似於錄音機上的按鈕。運行窗體的另一個方法是按F5鍵。

小結:學習完本學時後,我們具備了用於程序界面設計的基本知識。我們對控制項不在感到陌生,也明白如何向工作表和窗體添加控制項,但控制項的內容很多,需要邊用邊理解.此後,我們將從界面轉移到學習編寫代碼,並最終將二者融合。讓我們准備好學習編程吧!

3.7 疑難解答

問題1.怎樣決定控制項的位置?如何選擇添加到工作表還是添加到用戶窗體?
解答:這完全取決於個人的愛好和應用程序的用戶.如果用戶對EXCEL非常熟悉,那麼他們也許更希望以工作表的方式操作.在這種情況下不妨直接在工作表上創建控制項;如果你的用戶對EXCEL不熟悉或者你需要給用戶一個專業的界面感覺,那麼應該使用用戶窗體.

問題2.什麼情況下該用選項卡條而不是多頁控制項?
解答:如果每一頁具有相同布局,則應選擇選項卡條,否則應該選擇多頁.

4.1 代碼存在的位置:模塊

VBA代碼必須存放在某個位置,這個地方就是模塊。有兩種基本類型的模塊:標准模塊和類模塊。模塊中的每個過程或者是函數過程,或者是子程序概念.本課的最後部分將討論函數過程和子程序的區別。

新術語:
模塊:它是作為一個單元保存在一起的VBA定義和過程的集合。
類模塊:VBA允許你創建自己的對象,對象的定義包含在類模塊中。

你的大部分工作集中在標准模塊中(簡稱為模塊)當錄制宏時如果不存在模塊,EXCEL自動創建一個。EXCEL和VBA不關心代碼存放在哪一個模塊中,只要代碼存在於打開的工作簿中即可。

4.2 對模塊的概覽

過程被定義為VBA代碼的一個單元,過程中包括一系列用於執行某個任務或是進行某種計算的語句。工作簿的每個過程都有唯一的名字加以區分。

有兩種不同的過程:子程序和函數過程。子程序只執行一個或多個操作,而不返回數值。當錄制完宏查看代碼時,所看到的就是子程序。宏只能錄制子程序,而不能錄制函數過程。一個子程序的例子如清單4-1所示。

程序清單4-1 子程序的例子

Sub cmdSmallFont_Click()
With Selection.Font
.Name="Arial"
.FontStyle="Regular"
.Size=16
End With
End sub

上面列出的過程實際上是一個事件過程。通過它的名字,就可以知道這是一個事件過程。這個過程的名字是由一個對象的名字CmdSmallFont和一個事件的名字Click組成的,兩者之間用下劃線分開。如果還不明白,可以告訴你,CmdSmallFont是一個命令按鈕的名字。也就是說,當單擊這個命令按鈕時,就會運行這個事件過程。

函數過程通常情況下稱為函數,要返回一個數值。這個數值通常是計算的結果或是測試的結果,例如False 或True.正如前面所說,可以用VBA創建自定義函數。實際上可以在工作表上使用你創建的函數。程序清單4-2是一個計算價格的10%為運費的簡單例子。

程序清單4-2 簡單的用戶定義函數示例。

Public Function Shipping(Price)
Shipping = Price * 0.1
End Function

請注意,這個函數使用一個參數(Price).子程序和函數都可以使用參數。不論Price的值是多少,它都將決定運費額。Price可以是數字和單元格引用。函數返回計算出來的運費,這個函數可以用在單元格中。

A B
1 Price 100
2 Shipping =shipping(B1)

4.2.1 創建過程

創建第一個過程需要兩個基本步驟。首先,需要向工作簿中添加一個模塊。接著需要向模塊中添加一個工程。對於創建的每一個應用程序,只需添加一次模塊。可以使用多個模塊,但這是不必要的。某些開發者喜歡使用多個模塊,以便根據他們的目的或者窗體對過程進行組織。在本練習中,創建的過程只顯示一個消息框。

在本練習中創建的過程只顯示一個消息框。在本練習中使用Msgbox是為了提供一個可見的例子,雖然我們還沒有介紹過Msgbox語句,但是在本例中將使用它。要創建該過程,請按如下步驟進行:

1)打開一個新工作簿。
2)選擇"工具"-"宏"-"Visual Basic編輯器",打開VBA編輯器窗口。
3)在`VBA編輯器的左面,可以看到「工程資源管理器」窗口。在工程資源管理器窗口的「Thisworkbook"上單擊滑鼠右鍵,選擇「插入」-「模塊」,這樣就將一個模塊添加到應用程序中了。(如果你沒有看見「工程資源管理器」窗口,可以按Ctrl+R)
4)選擇「插入」「過程」,顯示「添加過程」對話框。
5)輸入「第一個工程」作為過程名字。在「類型」分組框中,確認選擇了「子程序」。單擊「確定」按鈕。這樣一個新的過程就添加到模塊中了。可以在模塊中看到以 Public Sub 第一個過程()開始,以End Sub結束的語句結構。
6)在過程中插入游標,輸入以下語句並回車:
Msgbox "這是我的第一個過程"
在輸入Msgbox後,會自動彈出一個消息框告訴你有關這條命令的信息,稱之為自動列表技術。輸入完成的過程如下所示:
Public Sub 第一個過程()
Msgbox "這是我的第一個過程"
End Sub

VBA對子程序和函數有如下的命名規則:
* 名字中可以包含字母數字和下劃線。
* 名字中不能包含空格句號驚嘆號,也不能包含字元@ & $ #.
* 名字最多可以包含255個字元。

4.2.2 運行宏

創建這個過程後,可以運行一下。運行一個過程有幾種方法:可以直接使用「運行」菜單,「運行子程序/用戶窗體」工具欄按鈕或按下F5鍵。要運行一個過程,可以按照如下步驟:

1)單擊「運行子程序/用戶窗體」工具欄按鈕,過?/ca>
參考資料:test-fly.psky.cn

❽ 如何打開office的VBA編輯器

快捷鍵: 台式電腦:Alt +F11
筆記本電腦: Alt +Fn+F11

❾ 在EXCEL表格操作中,如何藉助VBA實現當前活動單元格所在行變為淺紅色希望寫出代碼。如果不藉助

首先不用VBA是肯定不行的
用VBA當在selectionchange事件中編寫代碼如下
Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Cells.Interior.ColorIndex = xlColorIndexNone
Target.EntireRow.Interior.ColorIndex = 3

End Sub

顏色不滿意,可意改Colorindex,(3對應調色板上的序號,試幾個數吧)

由於在更換了當前單元格時(選擇了其它單元格),原活動單元格的底紋應被刪除,所以加了這樣 Cells.Interior.ColorIndex = xlColorIndexNone,這樣做會將表中原有設置的底紋給刪除。
按題目的要求,只要選中某個單元格,其整行底紋都變成了紅色,這必然就改變了原有的底紋設置,如要在離開當前單元格時,恢復原有設置,那就必須要記住每個單元格原有設置。這個有兩個方法,一是利用數組,保存每個單元格的Colorindex值,更方便的是復制一個表,每次執行宏命令時,先清除格式,再從備份表中復制格式。

❿ vba編程教程是什麼

vba編程入門教程:

1、打開vba編輯器

打開vba編輯器有下邊三種方法供大家使用:

方法1:點擊excel菜單中的【開發工具】,然後在代碼選項卡中點擊【Visual Basic】 即可,如下圖所示:

VBA的英文全稱是Visual Basic for Applications,是一門標準的宏語言。VBA語言不能單獨運行,只能被office軟體(如:Word、Excel等)所調用。

VBA是一種面向對象的解釋性語言,通常使用來實現Excel中沒有提供的功能、編寫自定義函數、實現自動化功能等。

熱點內容
位元組和存儲位元組 發布:2025-05-15 07:32:10 瀏覽:520
linux應用開發工程師 發布:2025-05-15 07:32:07 瀏覽:260
sqldcl 發布:2025-05-15 07:29:18 瀏覽:199
canvas的圖像上傳 發布:2025-05-15 07:29:17 瀏覽:102
離線緩存為什麼點不動 發布:2025-05-15 07:27:17 瀏覽:829
釘鼎伺服器出口ip 發布:2025-05-15 07:13:08 瀏覽:279
移動硬碟和光碟哪個存儲時間長 發布:2025-05-15 07:04:25 瀏覽:489
壓縮一定 發布:2025-05-15 06:57:30 瀏覽:289
進棧演算法 發布:2025-05-15 06:56:02 瀏覽:215
安卓和緩存 發布:2025-05-15 06:56:02 瀏覽:428