国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

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

開通VIP
Excel VBA入門(十)用戶窗體開發(fā)

VBA 中的用戶窗體就是指帶 UI 的用戶界面,在運行的時候會單獨彈出一個窗口,類似于在 windows 系統(tǒng)中運行的一個可執(zhí)行程序一樣(這個說法不太嚴謹,因為可執(zhí)行程序也可能是只有命令窗口而沒有 UI 的)。再具體一點,就是一個窗口界面當中,有可能會包含有文本框、復選框、單選按鈕、下拉列表,就如在網(wǎng)頁中填寫的表單一樣。再具體一點,就是如下圖這樣的:

1. 用戶界面設(shè)計

如上圖,UI 設(shè)計的部分其實是很簡單的,微軟的特色,直接拖拉拽就可以實現(xiàn)了。而每一個控件(或者稱為元素,也即放進窗體中的各種按鈕、輸入框等等)的屬性,可以在選中它之后,在默認位于左下角的 “屬性” 列表框中進行設(shè)置,可設(shè)置項包含按鈕的名字、前景色、背景色、顯示出來的文本、寬度、高度、字體顏色、字號、距離左側(cè)的距離、距離頂部的距離等等,很簡單。如果這個 “屬性” 框沒有出現(xiàn)的話,可以在頂部菜單欄的 “視圖” 中選擇 “屬性窗口”,它就會出現(xiàn)了。

2. 用戶交互

2.1 按鈕事件

直接在窗體中雙擊放進去的按鈕,就可以進入到按鈕的事件開發(fā)界面,默認的是單擊事件,如下圖

留意上圖中的紅框部分,左上角顯示的是該按鈕的名稱,右上角顯示的是該按鈕的事件,這里是單擊事件 Click,這兩個都是下拉選擇框,分別點擊它們右邊的倒三角可以看到其它的控件和各控件對應(yīng)的其它方法,如下

如果你選中了其它事件,則 VBE 會自動給你生成這個事件的函數(shù)簽名,它是根據(jù)按鈕的名稱和事件名稱來命名的,所以這個函數(shù)名字應(yīng)該是不能改動的(我沒有試過改)

其它按鈕的事件也類似,就不贅述了。

2.2 獲取控件的值

因為控件很多,就不能一一舉例了,只舉幾具做為示例,其它也類似的,通常都是它在屬性列表中叫什么,就能通過這個名字來取到它的值

文本框

假設(shè)文本框名為 tbx,則通過 tbx.Value 或者 tbx.Text 都能得到輸入到文本框中的內(nèi)容

多選按鈕

假設(shè)多選按鈕名為 cbx,則通過 cbx.Value 可以得到這個多選按鈕的值,如果它被選中了,則值為 True,否則為 False。通過 cbx.Caption 可以得到這個多選按鈕對應(yīng)的文本

單選按鈕

假設(shè)單選按鈕名為 obtn,則通過 obtn.Value 可以得到這個多選按鈕的值,如果它被選中了,則值為 True,否則為 False。通過 cbx.Caption 可以得到這個多選按鈕對應(yīng)的文本

3. 歷遍所有控件

比如一個窗體中,存在多個多選框,要一個個去判斷它是否被選中,此時可以考慮歷遍所有控件,通過判斷控件類型的方法來獲取多選框。

先看如下代碼:

orderStr = ""For Each ctrls In Me.Controls    If TypeName(ctrls) = "CheckBox" Then        If ctrls.Value = True Then            orderStr = orderStr & "||" & ctrls.Caption        End If    End IfNext ctrls

Me.Controls 是一個固定的寫法,Me 代表當前窗體,而 Controls 則表示窗體上的所有控件。用 TypeName 函數(shù)來判斷每個控件的類型,然后就可以對不同的控件執(zhí)行不同的操作了

4. 動態(tài)生成控件

即不再使用人工的方式來拖拉拽設(shè)置控件,而是在 VBA 代碼中來根據(jù)條件來動態(tài)地添加控件到窗體中。

先看代碼:

For Each order In orderArr    Set newCbk = form_combinedModel.Controls.Add("Forms.CheckBox.1")    With newCbk        .Left = 30        .Top = y        .Width = 80        .Height = 18        .Caption = order    End With    y = y + gap    panelH = panelH + gapNext order

這里的 orderArr 是一個數(shù)組,所以可以使用 For Each 來歷遍它。重點在于第 2 行,這里的 form_combinedModel 是窗體的名字,通過它的 .Controls.Add 方法就能夠添加新控件。這個方法的參數(shù)是固定的,需要添加什么類型的控件就使用對應(yīng)的參數(shù),示例代碼中添加的是多選框,對應(yīng)的是 Forms.CheckBox.1,這個參數(shù)可以在 這里 找到。

此外要注意的是,這個新添加的控件是一個對象,所以需要在變量前面使用 Set 關(guān)鍵字。示例代碼中接下來的 With 語句,是用于設(shè)置這個新的控件的屬性,這里設(shè)置了它的位置(左距、上距)、寬度、高度、顯示文本


本系列教程其它文章

Excel VBA 入門(零)
Excel VBA 入門(一)數(shù)據(jù)類型
Excel VBA 入門(二)數(shù)組和字典
Excel VBA 入門(三) 流程控制1-條件選擇
Excel VBA 入門(四)流程控制2-循環(huán)控制
Excel VBA 入門(五)Excel對象操作
Excel VBA 入門(六)過程和函數(shù)
Excel VBA 入門(七)注釋、宏按鈕及錯誤處理
Excel VBA 入門(八)單元格邊框
Excel VBA 入門(九)操作工作薄
Excel VBA入門(十)用戶窗體開發(fā)

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
如何給VBA控件起一個既高端又易懂的名字?
第263集怎么用vba窗體控件文本框制作QQ登錄窗口
怎么在excel2013中利用窗體控件插入單選框
VB常用控件介紹
功能測試大全
VBA窗體之單選和復選框的應(yīng)用 | VBA實例教程
更多類似文章 >>
生活服務(wù)
分享 收藏 導長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服