小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

用VBA代碼編輯器繪制用戶窗體

 有你最好DOC 2015-10-01

用VBA代碼編輯器繪制用戶窗體

由七個(gè)部分組成

學(xué)習(xí)如何借助用戶窗體在VBA中創(chuàng)建自己的自定義對(duì)話框。這是該系列的第一部分(其他部分是寫代碼的用戶窗體創(chuàng)建高級(jí)控制)。

  1. VBA用戶窗體簡介(本文)
  2. 在VBA中創(chuàng)建和使用用戶窗體
  3. 屬性窗口
  4. 選擇窗體和控件
  5. 格式化窗體和控件
  6. 分組,對(duì)齊,調(diào)整大小,間距和排列
  7. 控制是如何形成鍵的作用

這個(gè)博客是我們的一部分,Excel的VBA系列教程。我們還運(yùn)行在Excel培訓(xùn)課程在VBA課程

*該教材由谷歌翻譯,原帖作者為安迪·布朗,本人只是略作校訂。原帖網(wǎng)址:(http://www./blog/s229/vba-userform.htm)
1、VBA用戶窗體簡介

什么是用戶窗體

一個(gè)用戶窗體(或只是形式)就是您自己創(chuàng)建一個(gè)對(duì)話框。就像這樣:

用VBA代碼編輯器繪制用戶窗體 用VBA代碼編輯器繪制用戶窗體
一個(gè)消息框 一個(gè)輸入框

當(dāng)然,我們可以通過添加一些控件和格式使之更為個(gè)性,就像這樣:

酒水訂購表格

這是我們要做的辦公室飲料預(yù)定窗體。

 

用戶窗體不限于Excel中:Word,PowerPoint和SharePoint Designer都可以使用相同的程序創(chuàng)建(而Access和Outlook,通常情況下,也可以通過自帶的程序做到)。

用戶窗體的優(yōu)點(diǎn)和缺點(diǎn)

你應(yīng)該學(xué)習(xí)如何創(chuàng)建和使用用戶窗體?在學(xué)習(xí)之前我們先了解一下用戶窗體的優(yōu)缺點(diǎn),這是優(yōu)點(diǎn)

優(yōu)點(diǎn) 筆記
印象深刻 自定義窗體帶有的下拉列表,命令按鈕,圖片和格式化更能打動(dòng)客戶或經(jīng)理。
易于使用 對(duì)于那些不喜歡直接在Excel表格中輸入數(shù)據(jù)的用戶,您可以通過創(chuàng)建窗體,使很大操作更為簡單。

這些都是強(qiáng)大的優(yōu)勢; 硬幣的另一面怎么樣?

壞處 筆記
驗(yàn)證數(shù)據(jù) 創(chuàng)建用戶窗體是容易的; 但確保用戶輸入的數(shù)據(jù)是否正確,需要更長的時(shí)間。在工作??表中,您可以像使用數(shù)據(jù)驗(yàn)證和保護(hù)工具,確保用戶輸入正確的數(shù)據(jù)類型,但在窗體中你將不得不更加努力,以避免錯(cuò)誤。
偶爾抽風(fēng) 我從多年??的Excel和書寫系統(tǒng)培訓(xùn)的經(jīng)驗(yàn)是,用戶窗體偶爾崩潰 -當(dāng) Excel本身卻很少。

 

現(xiàn)在你知道什么是窗體了,讓我們來看看如何創(chuàng)建一個(gè),如何并用宏來運(yùn)行它。

2、在VBA中創(chuàng)建和使用用戶窗體

創(chuàng)建一個(gè)窗體

在VBA中創(chuàng)建一個(gè)用戶窗體很容易 - 在代碼編輯器中,只需右鍵單擊并選擇添加用戶窗體:

插入一個(gè)用戶窗體

右鍵單擊一個(gè)項(xiàng)目/工作簿,然后選擇顯示插入一個(gè)用戶窗體的選項(xiàng)。

 

你將被示以一個(gè)長方形的窗體,您可以拖拉右下角來調(diào)整大小:

調(diào)整窗體

單擊并拖動(dòng)右下角來調(diào)整用戶窗體 - 它將始終出現(xiàn)在代碼編輯器窗口的左上角。

 

就像宏,一個(gè)用戶窗體存儲(chǔ)為一個(gè)工作簿的一部分,而不是一個(gè)單獨(dú)的文件。

控件

您添加到用戶窗體的東西被稱為控件。下面簡單的窗體有3個(gè)控件:

與3控制形成

1個(gè)標(biāo)簽,1個(gè)文本框和1個(gè)命令按鈕。

 

下面飲品訂購窗體已超過10控件:

飲料形成,顯示控制

這種相對(duì)簡單的窗體包括:

  • 1個(gè)圖像
  • 3個(gè)標(biāo)簽
  • 2個(gè)文本框
  • 1個(gè)組合框
  • 1個(gè)滾動(dòng)條
  • 2個(gè)按鈕
  • 1個(gè)框架
 

在這個(gè)系列后來的博客展示了如何添加一些更深?yuàn)W的控制 - 現(xiàn)在,我們介紹一般原則。

2、在窗體上繪制控件

您可以使用工具箱繪制繪制窗體上的任何控件

工具箱

表格工具箱 -最簡單的控件都顯示在左上角。

你可以讓你的鼠標(biāo)徘徊在每個(gè)控件上,看看它是什么:這是標(biāo)簽控件被選中。

 

當(dāng)你打開一個(gè)表格,如果您看不到工具箱窗口,請(qǐng)嘗試在這里單擊工具箱

工具箱工具

如果它擅離職守不見了,單擊顯示的工具以顯示 工具箱。

一旦你選擇了你的控制工具,您可以單擊并拖動(dòng)到窗體上的任何位置:

繪制一個(gè)標(biāo)簽控件

在這里,鼠標(biāo)指針顯示你正在繪制一個(gè) 標(biāo)簽控件。

 

在選定的位置上只需點(diǎn)擊Excel(和任何其他應(yīng)用程序一樣)就會(huì)繪制具有標(biāo)準(zhǔn)尺寸和形狀的控件。

經(jīng)學(xué)會(huì)了如何繪制控件,讓我們繼續(xù)前進(jìn),以如何展示自己 的屬性

3、屬性窗口

如果你在設(shè)計(jì)表格需要花很多的時(shí)間,你需要屬性窗口永久可見:

屬性窗口

在 屬性窗口中,您可以更改窗體或其控件的任何方面。

 

顯示屬性窗口

您可以使用菜單顯示屬性

屬性窗口的菜單

選擇菜單選項(xiàng)的屬性窗口來顯示。

 

或者,您也可以按F4鍵或單擊該工具:

在屬性工具

單擊該工具 以顯示屬性窗口。

按字母排序或按分類排序?qū)傩?/font>

您可以從顯示的列表中從A到Z或者分類選擇您需要的屬性,通過單擊屬性窗口的頂部:

用VBA代碼編輯器繪制用戶窗體 用VBA代碼編輯器繪制用戶窗體
按字母順序 按分類順序

我不知道我有什么建議,但這個(gè)博客的其余部分將始終使用分類(或者應(yīng)該被分類的?)視圖。

 

已經(jīng)學(xué)會(huì)了如何顯示屬性,您接下來需要學(xué)習(xí)如何選擇控件。

4、選擇窗體和控件

要格式化一個(gè)窗體上的任何控件,您首先需要知道如何選擇它/它們。我們首先看一下選擇一個(gè)控制,然后看看如何來同時(shí)選擇多個(gè)的控件(本博客的下一部分將會(huì)學(xué)習(xí)如何格式化控件和窗體)。

選擇一個(gè)單一的控件

要改變單一控件,請(qǐng)單擊以選中它,然后使用屬性窗口:

控件屬性菜單

任何控制,以顯示其屬性右鍵單擊,如下圖所示,如果他們不是已經(jīng)可見(前面已經(jīng)提到過,您也可以按F4鍵 在任何時(shí)候,彈出屬性 窗口)。

 

或者,您也可以在屬性窗口本身選擇控件

屬性窗口 - 控制下拉

點(diǎn)擊下拉箭頭,選擇要更改屬性的控件。

 

選擇多個(gè)控件

有幾種方法可以同時(shí)選擇多個(gè)控件。最簡單的方法可能是用鼠標(biāo)左鍵:

單擊并拖動(dòng)選擇

單擊并拖動(dòng)窗體上繪制一個(gè)矩形,并確保你開始位置在空白區(qū)。這個(gè)矩形接觸或包圍的控件將被選中。這個(gè)例子會(huì)選取了3個(gè)控件。

 

或者,您可以使用SHIFT鍵CTRL 鍵:

使用鍵選擇

在這個(gè)例子中,如果你點(diǎn)擊[確定] 按鈕,如圖所示:

  • CTRL 鍵不放,它會(huì)添加到當(dāng)前選擇的按鈕; 
  • SHIFT 鍵不放,就會(huì)添加按鈕和文本框(因?yàn)槭俏谋究蛟跇?biāo)簽和按鈕前加入,從而謊言“之間”)。
 

或者,您可以按CTRL A 一氣呵成選擇窗體上的每個(gè)控件。

主導(dǎo)控件

如果選擇多個(gè)控件,有一個(gè)(也是唯一一個(gè))控件周圍會(huì)出現(xiàn)白色的方框; 而其他的是黑色。這個(gè)白色的方框的選擇被稱為主導(dǎo)控件

控制與白色和黑色手柄

這里的標(biāo)簽Name: 是主導(dǎo)控件。如果你選擇了多個(gè)控件,您可以點(diǎn)擊其中任何一個(gè)做,作為新的主導(dǎo)控制。

 

這句話的意思是,如果你調(diào)整多個(gè)選定控件的大小或?qū)R時(shí)(本博客后面會(huì)提到),將以主導(dǎo)控件作為參照:

對(duì)齊控制

上圖所示為左對(duì)齊的結(jié)果。向紅線對(duì)齊,因?yàn)檫@是主導(dǎo)控件的左邊緣。

 

選擇整個(gè)窗體 

如果你想為一個(gè)窗口(如它的名稱)更改屬性,你需要選擇它:

用鼠標(biāo)選擇表格

單擊窗體上其他控件以外的的任意位置,選擇窗體,如下圖所示。

 

 

現(xiàn)在,你知道如何選擇一個(gè)窗體或其控件,是時(shí)候來看看如何格式化它/它們。

格式化窗體和控件

您可以通過選擇它/它們(如本博客的前面部分所示),然后按如下所示更改屬性格式化形式或任何其控制。

窗體標(biāo)題

要改變窗體的標(biāo)題:

更改窗體標(biāo)題屬性

要改變窗體的標(biāo)題:

  1. 確定要顯示的標(biāo)題。
  2. caption屬性鍵入(真奇怪!在鍵入的同時(shí)我們可以看到窗口的標(biāo)題會(huì)隨著改變)。
 

改變背景和前景顏色

您可以選擇控件(S)或窗體本身來改變其顏色:

前景色和背景色屬性

更改:

  1. 背景色屬性; 
  2. 前景色屬性

如下圖所示。

 

當(dāng)改變顏色屬性,一定要使用的調(diào)色板的顏色或系統(tǒng)的顏色:

顏色的調(diào)色板標(biāo)簽撕下

選擇 調(diào)色板選項(xiàng)卡,看看有什么顏色你選擇!

 

設(shè)置控件的背景色為透明的方式略有不同:

BackStyle屬性

更改背景樣式控件的(BackStyle)屬性為透明,這樣控件就會(huì)和整個(gè)窗體的顏色一致。

 

字體

更改控件的不理想的初始字體:

Font屬性

單擊 字體屬性,生成按鈕(帶有3個(gè)點(diǎn))出現(xiàn)。點(diǎn)擊這里!

 

字體對(duì)話框的出現(xiàn)使一切變得簡單:

字體對(duì)話框

?。?/font>這個(gè)現(xiàn)在看起來很熟悉。

控件文本的水平對(duì)齊

在下面的窗體中,選定標(biāo)簽右對(duì)齊水平:

右對(duì)齊的標(biāo)簽

默認(rèn)的對(duì)齊方式為左對(duì)齊,已經(jīng)有人已經(jīng)改變了這些控件。

 

要更改水平對(duì)齊方式,你可能會(huì)期待有這樣的工具:

水平對(duì)齊工具

應(yīng)該有這樣的工具。他們在哪里?

 

沒找不到,對(duì)齊屬性也沒有呀?這是文本對(duì)齊TextAlign(當(dāng)然?。褪撬?/font>

TextAlign屬性

該 文本對(duì)齊屬性有3個(gè)。

 

控件文本的垂直對(duì)齊

一個(gè)控件文本的垂直對(duì)齊文本也很簡單 - 這一點(diǎn)在用戶窗體里可能用不到!

垂直對(duì)齊控制

如果你想要的標(biāo)題出現(xiàn)在文本框的垂直中心,你只能在文本的前面按Enter鍵 

 

窗體內(nèi)居中對(duì)齊

在下面的命令按鈕在窗體內(nèi)水平居中對(duì)齊

一個(gè)中心對(duì)齊命令按鈕

Order按鈕水平居中。

 

要做到這一點(diǎn),選擇相關(guān)的控件,然后選擇下列選項(xiàng)之一:

中心的橫向菜單選項(xiàng)

窗體內(nèi)居中。

 

設(shè)置的控件的邊框

您可以設(shè)置控件的邊框的顏色和厚度:

控制與邊界

這種控制有一個(gè)黑色的邊框。

 

要做到這一點(diǎn),設(shè)置如下所示的兩個(gè)屬性:

如果沒有設(shè)置邊框的樣式,也就不用設(shè)置邊框的顏色了。

 

這四個(gè)屬性你可能不必更改

有一些屬性我認(rèn)為你不應(yīng)該改變!

圖片上的表格

圖片屬性允許您在窗體上設(shè)置背景圖片,但他們總是掩蓋的內(nèi)容。你可以平鋪,拉伸和縮放照片,但最好刪除它們!

 
帶垂直滾動(dòng)條形成

您可以設(shè)置滾動(dòng)條屬性水平, 垂直兩者都的形式,但在你不需要的情況下,最好關(guān)掉(或者在需要的時(shí)候選擇使用多頁控件)。

 
初創(chuàng)pos??ition屬性

窗體的初創(chuàng)位置屬性start-up position property,但最明智的位置似乎是在其所屬程序(即Excel表格)的中間,這是默認(rèn)的,如下圖所示。

 
一個(gè)非模式窗體

窗體的模塊屬性:如果你設(shè)置為,用戶可以忽略窗體并單擊操作Excel表格,這可能不是一個(gè)好主意。

 

 

現(xiàn)在,我們已經(jīng)學(xué)習(xí)了格式化的窗體和單獨(dú)的控件,讓我們繼續(xù)學(xué)習(xí)格式化多個(gè)控件:即多個(gè)控件的對(duì)齊,大小,間距和分組控制。

6、分組,對(duì)齊,調(diào)整大小,間距和排列

在前面我們學(xué)習(xí)同時(shí)選中多個(gè)控件時(shí)提到,帶有白色小方塊的主導(dǎo)控件(以及這意味著什么)。在這里我們學(xué)習(xí)多個(gè)控件的對(duì)齊,大小,間距和分組控制


控件間的對(duì)齊

要對(duì)齊控件,請(qǐng)選擇它們,然后選擇下圖所示,鼠標(biāo)右鍵選項(xiàng):

選定的三個(gè)控件,用對(duì)齊菜單

在這里的Name標(biāo)簽是占主導(dǎo)控件,這樣選擇左對(duì)齊(如圖所示)時(shí),選定的控件會(huì)向它的左邊緣對(duì)齊。

 

均分控件的水平或垂直間距

在下面的表格中,各控件需要平均分部:

控制與不平等的垂直間距

在這種情況下,控件間隔等距會(huì)更好看。

 

要做到這一點(diǎn),選擇控件如圖所示,然后選擇此處顯示的菜單選項(xiàng)之一:

垂直間距菜單選項(xiàng)

在這個(gè)實(shí)例中所示的選項(xiàng)就是我們想要的。

 

請(qǐng)注意,在這種情況下,你將不得不對(duì)文本框/組合框做同樣的事情,讓他們以同樣的方式排列。

使控件大小一致

以下是如何獲得2個(gè)或多個(gè)控件具有相同的大小或?qū)挾龋?/font>

尺寸寬度菜單選項(xiàng)

選擇控件,然后在其中一個(gè)右鍵單擊并選擇此處顯示的菜單選項(xiàng)。Drink組合框是主導(dǎo)控制,所以另外兩個(gè)選定的控件將被調(diào)整為和該控件相同的寬度。

 

分組控件

在你設(shè)計(jì)的窗體中有些部分,作為一組是非常有用的,使它們就像一個(gè)單一的控件:

在一幀中多個(gè)控件

在這里,我們希望將所有框架中的控件組合到一起,這樣我們就可以作為一個(gè)整體來移動(dòng)操作。

 

做到這一點(diǎn)的方法是選擇所有控件并將它們組合在一起的:

選擇分組控制 控制組合在一起
這樣來組合控件... ......選擇時(shí)會(huì)成為一體。

即使控件組合在一起,你仍然可以在組內(nèi)分別格式化單個(gè)控件,讓您兩全其美。

可以以同樣的方式取消組合:

取消組合菜單

在分組組控件單擊鼠標(biāo)右鍵并選擇取消組合如下所示。

 

使用框架組合控件

另一種組合方式是通過創(chuàng)建一個(gè)框架。首先剪切你希望出現(xiàn)在框架上的控件:

對(duì)于選定的控件快捷菜單

選擇要組合在一起的控件,并剪切他們到剪貼板。

 

點(diǎn)擊框架Frame工具,并用它來 ??繪制一個(gè)矩形:

該框架工具

點(diǎn)擊該工具,并繪制你的框架的矩形。

 

現(xiàn)在,您可以刪除該框架的標(biāo)題,并粘貼控件:

幀標(biāo)題

刪除 Frame1的標(biāo)題(在其Caption屬性中 ),使其看起來更整潔,然后從剪貼板中粘貼控件拖到框架內(nèi)

 

結(jié)果:無論該框架去哪里,其中的控件也會(huì)跟隨:

選定的幀

當(dāng)您移動(dòng)框架時(shí),其中的控件也隨之移動(dòng)。

 

你可以設(shè)置框架邊框屬性為 frmBorderStyleNone隱藏邊框,如果你不希望看到矩形框。

 

7、怎樣用快捷鍵控制窗體

我們已經(jīng)知道了如何格式化表格,我們現(xiàn)在學(xué)習(xí)在窗體內(nèi)使用快捷鍵,以及輸入,Tab鍵 取消鍵。

控制Tab鍵順序

當(dāng)你按下Tab鍵 鍵窗體會(huì)發(fā)生什么?答案取決于窗體的Tab鍵順序:

控制與重點(diǎn)

當(dāng)你按下Tab鍵 鍵窗體會(huì)發(fā)生什么?你想光標(biāo)跳轉(zhuǎn)到下一個(gè)可以“獲得焦點(diǎn)” 的控件,-也就是說, Drink組合框。

 

可以在窗體框架或者 多頁控件設(shè)置Tab鍵順序。如果您選擇了窗體,你會(huì)看到窗體的Tab鍵順序:

Tab鍵順序菜單

選擇窗體框架或者 多頁控件,然后選擇要更改的Tab鍵順序如圖所示。

  • 如果您已經(jīng)選擇了窗體,你會(huì)看到窗體上的頂級(jí)控件; 
  • 如果您(此例)選擇了一個(gè)框架,你會(huì)看到框架內(nèi)的控件。
 

如果你選擇了框架或者多頁,你只會(huì)看到一些窗體的控件:

用于控制在一個(gè)框架Tab鍵順序

因?yàn)槟氵x擇了一個(gè)框架,你只能在框架內(nèi)的控件的Tab鍵順序。

 

很奇怪的是Tab鍵順序包括標(biāo)簽控件,實(shí)際上由于這些控件不能接收焦點(diǎn)(你不能點(diǎn)擊它們),故而與Tab鍵順序無關(guān)。接下來我們來看看怎樣讓標(biāo)簽的快捷鍵出現(xiàn)在 Tab鍵順序對(duì)話框。

快捷鍵

在下面的窗體,你可以按ALT D 跳轉(zhuǎn)到Drink:組合框,因?yàn)樵摌?biāo)簽具有D下劃線:

重點(diǎn)控制

帶下劃線的字母 D被稱為快捷鍵。

 

您只能將快捷鍵連接到標(biāo)簽,而不能連接文本框或組合框。當(dāng)你按下會(huì)發(fā)生ALT D 光標(biāo)會(huì)跳轉(zhuǎn)到Tab順序中的下一個(gè)可以接收焦點(diǎn)的Drink組合框。

窗體Tab鍵順序

Drink:組合框是lblDrink標(biāo)簽后的第一個(gè)控件且可以接收焦點(diǎn)(比如,您可以單擊進(jìn)入)。

 

至于你如何安裝快捷鍵 - 這是很容易的:

加速鍵屬性

在Accelerator屬性中輸入一個(gè)字母。

 

默認(rèn)按鈕(回車鍵)

當(dāng)窗體出現(xiàn)在窗口時(shí)通常會(huì)有一個(gè)邊框加粗的命令按鈕。按下Enter鍵,命令開始執(zhí)行:

訂購按鈕為默認(rèn)按鈕

在這里, Order按鈕的邊框略有加粗,按下Enter鍵,命令開始執(zhí)行:

 

要想使該按鈕為默認(rèn),就需要設(shè)置其Default屬性為

默認(rèn)屬性

選擇Order按鈕設(shè)置Default屬性為

 

請(qǐng)注意,您只能在窗體上有一個(gè)默認(rèn)按鈕 - 所以,如果你讓另一個(gè)按鈕的默認(rèn),這個(gè)將取消。

取消按鈕(Escape鍵按鈕)

類似于以上的默認(rèn)按鈕,當(dāng)您按下ESC鍵取消按鈕會(huì)被選擇。

Cancel屬性

選擇 取消按鈕,并設(shè)置其 Cancel屬性設(shè)置為。當(dāng)用戶按下ESC鍵,連接到這個(gè)按鈕的任何代碼將會(huì)執(zhí)行。就像默認(rèn) 按鈕,每個(gè)窗體也只有一個(gè) 取消按鈕。

 

這就是這個(gè)馬拉松式格式化用戶窗體學(xué)習(xí)的結(jié)尾。接下來,我們將學(xué)習(xí):

  • 如何附加代碼到窗體并使他們正常運(yùn)行
  • 如何創(chuàng)建一些更高級(jí)的窗體控件

然而,這些都是獨(dú)立博客的主題。

*該教材由谷歌翻譯,原帖作者為安迪·布朗,本人只是略作校訂。原帖網(wǎng)址:(http://www./blog/s229/vba-userform.htm)

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多