盡管可以通過VBA調(diào)用Excel中的部分內(nèi)置對(duì)話框,但這些對(duì)話框并不能滿足所有需求。 按列信息拆分?jǐn)?shù)據(jù),是一個(gè)較為常見的問題。為了讓拆分?jǐn)?shù)據(jù)的過程能適用不同樣式和 結(jié)構(gòu)的工作表,可以在執(zhí)行拆分操作前進(jìn)行一些設(shè)置。例如,設(shè)置要拆分的數(shù)據(jù)區(qū)域、數(shù)據(jù) 表包含的表頭區(qū)域、按哪列信息拆分、拆分的方式等。 內(nèi)置對(duì)話框不能滿足 程序執(zhí)行的所有需求 設(shè)計(jì)個(gè)性化的交互界面,可能需要一個(gè)自定義的對(duì)話框來完成這些設(shè)置。 ![]() 圖 8-28 數(shù)據(jù)表 圖 8 - 29 展示了一個(gè)可以用來設(shè)置拆分?jǐn)?shù)據(jù)選項(xiàng)的簡易對(duì)話框。 ![]() 圖 8-29 自定義的拆分?jǐn)?shù)據(jù)對(duì)話框 控件, 設(shè)置交互界面必不可少的“素材” 在Excel中設(shè)計(jì)和創(chuàng)建個(gè)性化的交互界面,就是根據(jù)需求在工作表或窗體中添加控件,使它們能有效地接收、傳遞各種指令。所以,在開始設(shè)計(jì)用戶界面前,有必要先認(rèn)識(shí)Excel里的控件。 Excel中有兩種類型的控件:表單控件和ActiveX控件。可以在Excel的【開發(fā)工具】選項(xiàng)卡中找到它們,如圖 8 - 30 所示。 ![]() 圖 8-30 Excel中的兩種控件 創(chuàng)建在VBA中使用的操作界面,通常使用的是ActiveX控件。 在工作表中使用 ActiveX 控件 Excel 中的 ActiveX 控件 默認(rèn)情況下,在【功能區(qū)】的【開發(fā)工具】選項(xiàng)卡中可以看到部分ActiveX控件,如圖 8-31 所示。 ![]() 圖 8-31 【開發(fā)工具】選項(xiàng)卡中可以看到的ActiveX控件 但能在工作表中使用的ActiveX控件遠(yuǎn)不止這些, 可以單擊【其他控件】按鈕,在彈出的對(duì)話框中選擇使 用其他控件,如圖 8 - 32 所示。 ![]() 圖 8-32 其他ActiveX控件 在工作表中添加一個(gè)選項(xiàng)按鈕 在【開發(fā)工具】選項(xiàng)卡中選擇某個(gè)ActiveX控件,按住鼠標(biāo)左鍵拖動(dòng)鼠標(biāo)即可將該控件添加到工作表中。圖 8 - 33 所示為在工作表中添加一個(gè)選項(xiàng)按鈕的操作步驟。 ![]() 圖 8-33 在工作表中添加選項(xiàng)按鈕 設(shè)置選項(xiàng)按鈕控件的格式 ActiveX 控件的格式需要在【屬性窗口】中設(shè)置,在控件處于可編輯狀態(tài)(設(shè)計(jì)模式)時(shí),單擊【開發(fā)工具】選項(xiàng)卡中的【屬性】按鈕即可調(diào)出【屬性窗口】,如圖 8 - 34 所示。 ![]() 圖 8-34 調(diào)出【屬性窗口】 【屬性窗口】中列出了當(dāng)前選中控件的各種屬性,可以通過修改控件的屬性來設(shè)置控件,如設(shè)置控件的名稱,更改控件的外觀等,如圖 8 - 35 所示。 ![]() 圖 8-35 設(shè)置選項(xiàng)按鈕 用同樣的方法再繪制一個(gè)標(biāo)簽為“女”、名稱為“xb 2”的選項(xiàng)按鈕,如圖 8 -36 所示。 ![]() 圖 8-36 新添加的選項(xiàng)按鈕 如果要新建的控件與現(xiàn)有控件的外觀相同,可以通過直接復(fù)制控件的方式得到,如本例 中的“xb 2”就可以直接復(fù)制“xb 1”得到,這樣會(huì)省去設(shè)置控件外觀的步驟。 編寫代碼,為控件設(shè)置功能 ActiveX控件需要編寫VBA代碼來指定其功能。如果想知道用戶選擇的是“男”還是 “女”,就應(yīng)分別給這兩個(gè)控件編寫相應(yīng)功能的VBA代碼。想要為“xb 1”控件(顯示為“男”的控件)添加代碼,首先得調(diào)出該控件所在工作表的【代碼窗口】,如圖 8 - 37 所示。 ![]() 圖 8-37 調(diào)出控件所在對(duì)象的【代碼窗口】 在該事件過程中增加要執(zhí)行的VBA代碼,如: ![]() ![]() 用同樣的方法為控件“xb 2”編寫事件過程: ![]() 寫完的代碼如圖 8 - 38 所示。 ![]() 圖 8-38 為控件添加的代碼 在工作表中使用選項(xiàng)按鈕設(shè)置好控件的功能后,返回工作表區(qū)域,依次單擊【功能區(qū)】中的【開發(fā)工具】→【設(shè) 計(jì)模式】命令退出對(duì)控件的編輯,插入的控件就可以使用了,如圖 8 - 39 所示。 ![]() 圖 8-39 在工作表中使用選項(xiàng)按鈕 對(duì)于已經(jīng)添加到工作表中的ActiveX控件,得先切換到設(shè)計(jì)模式之后才能重新編輯或設(shè)置控件。 這就是在工作表中使用選項(xiàng)按鈕控件的基本步驟,其他ActiveX 控件可以參照這種方法來設(shè)置使用。 在工作表中設(shè)計(jì)程序交互界面 Excel的工作表就像一張現(xiàn)成的畫布,可以在這張畫布中添加控件,設(shè)計(jì)一些簡單的交互界面。圖 8 - 40 所示是在Excel中建立的,保存單位職工檔案信息的簡易數(shù)據(jù)庫。 ![]() 圖 8-40 職工檔案信息 為了便于管理這些數(shù)據(jù),可以設(shè)計(jì)一個(gè)類似圖 8 - 41 所示的職工信息管理界面。 ![]() 圖 8-41 職工信息管理界面 學(xué)會(huì)了嗎?快速提高你的效率吧!從此變“excel一秒超人”! ![]() |
|