讓EXCEL VBA具有進度狀態條功能(表單設計)

 

 

示意畫面:

 

緣起:

由於範例黑名單篩選,需要查詢兩個範圍是否有相同資料,

需要耗費時間比對,因此會有一小段時間需要讓使用者等待,

此時若是有個進度狀態調出現,就可以讓使用者知道所需等待時間,

與進行的進度,這樣可以讓VBA程式更加友善。

但是該如何做,從那下手呢?

首先需要知道的事VBA的表單設計,

其次是當啟動表單之後,會觸發Activate事件,

所以需要將狀態條的程式寫在這裡,

讓迴圈中加入更新狀態條的比例。

以下是詳細步驟截圖:

 

1.設計表單

加入Label控制項(大A)

2.增加啟動表單功能

Public Sub 查詢黑名單_表單()

   home.Show

End Sub

 

3.在Activate事件裡撰寫程式

Private Sub UserForm_Activate()

   PB.Width = 0

   r = Sheets(1).Range("A2").End(xlDown).Row

   k = 1

   '1.取查詢名單和黑名單字串比對

   For i = 2 To r

       Sheets(1).Cells(i, "B") = "=CountIf(黑名單, A" & i & ")"

       '2.將結果寫到查詢結果

       If Sheets(1).Cells(i, "B") >= 1 Then

           Sheets(3).Cells(k, "A") = Sheets(1).Cells(i, "A")

           k = k + 1

       End If

       PB.Width = (i - 1) * (200 /r)

       Me.Repaint

   Next

   home.Hide

End Sub

 

4.在EXCEL中增加啟動表單按鈕

所以如果按下按鈕,就會啟動進度狀態條表單,

並觸發Activate事件裡的程式,

此時就會到進度狀態條表單畫面會出現了。

也就是將來如果有需要等待的VBA程式,

就可以加入進度狀態條,讓程式更加專業有趣。

 

教學影片:

 

 

其他相關學習:

教學論壇:

https://groups.google.com/forum/#!forum/scu_excel_vba2_83

 

與前幾期的課程雖然用的是相同的範例,但最大的不同在:

1.除了解說建函數公式,並將之轉成自訂函數,把複雜的公式變簡單。

2.如何將複雜的公式變成簡單的按鈕,按下按鈕就自動完成工作。

 

內容主要分成:

1.常用函數

2.進階函數應用

3.從函數到VBA設計

4.如何自訂函數

5.VBA程式設計入門

6.如何錄製巨集與修改

7.如何將大量資料轉存到資料庫

8.如何讀取資料庫資料

詳細目錄:http://goo.gl/eQptxx

 

有講義與範例和完成的畫面公式與程式碼,

只要按照每周的順序學習,學會EXCEL VBA自動化絕非難事,

優點:

1.可非線性學習:可按照自己最不熟的部分多次學習。

2.可反覆學習:有疑問可以多次聽講,保證學的會。

3.可攜帶學習:只要有瀏覽器就可以播放SWF檔,MAC電腦也沒問題。

 

課程理念:

1.以循序漸進的方式, 透過詳細的說明和實用的Excel VBA範例, 逐步了解整個 VBA 的架構與輪廓,進而學習 VBA 變數、函式及邏輯的觀念, 即使沒有任何程式設計基礎, 也能自己親手撰寫 VBA 程序來提昇工作效率, 晉身職場 Excel 高手! 2.進而解說EXCEL與資料庫的結合,將EXCEL當成資料庫來使用,結合函數、VBA等更深入的功能,讓資料處理和分析的應用更上層樓。 3.將結合GOOGLE雲端試算表,教您如何將EXCEL函數雲端化與網路化。

 

更多EXCEL VBA連結:

01_EXCEL函數與VBA(入門) http://terry55wu.blogspot.tw/p/excelvba.html

02_EXCEL VBA自動化教學(進階) http://terry55wu.blogspot.tw/p/excel-vba.html

 

吳老師 2019/5/21

 

 

大數據, 巨集錄製, 函數東吳進修推廣部, 表單, 處理, 資料庫, ADO, EXCEL, excel函數教學, excel函數應用, SQL, VBA, vba教學視頻

arrow
arrow
    創作者介紹
    創作者 吳老師 的頭像
    吳老師

    吳老師教學部落格(痞客邦分站)

    吳老師 發表在 痞客邦 留言(0) 人氣()