2009年7月12日 星期日

第1講 用Excel VBA自動化繪製柏拉圖概念

用Excel VBA自動化地做柏拉圖例 - 第1講
1  認識Excel的巨集(macro)與VBA(Visual Basic For Application)
為了讓微軟公司Excel、Word…等檔案內容自動化地操作,微軟Office都有各自的巨集可以自動化操作,而VBA(Visual Basic For Application)作為Office所有軟體共通的巨集語言。
2 建立Excel巨集(名稱為 Data)程序
(1) 巨集目的:讓Excel空白工作表上,自動地填入柏拉圖繪製的原始資料如下

[表1]

A
B
C
1
不良內容
不良率

2
AA
0.120

3
BB
0.020

4
CC
0.050

5
DD
0.010

6
Else
0.015

7



(2) 開始建立Excel巨集
(3) 建立一個按鈕來啟用Excel巨集
具體步驟(請打開Excel的新工作表跟著操作,以下是以Excel 2003為例)

2-1 功能表 工具 > 巨集 > 巨集 (快捷鍵 alt-F8,另外簡體版 工具 > 宏 > 宏) 出現巨集的對話框

2-2 巨集的名稱:填入 “data” (可任意名稱),位置:請選”book1”(存放位置是有學問,需要參考專業書籍),按『建立』,出現一個新畫面,此稱為 Visual Basic 編輯器(VBE),內有二行
Sub data()
End sub
其中 sub 表示是一個 subroutine 有人稱為”子程序”,”data” 是 sub 的名稱,End sub 就是宣告命令的終點,Sub data() 與 End sub 就是放置程式指令的地方,因為新建立,所以空白

2-3 開始在Sub data()與End sub間填寫命令
請看官Copy 以下內容 Paste 到Sub data() 與 End sub 之間
‘ -------------- 從此處開始 Copy ------------------
‘ -------macro by Geroge ---2009/7/12--------------
Cells(1, 1) = "phenomenon"
Cells(1, 2) = "Defect rate"
Cells(2, 1) = "AA"
Cells(2, 2) = "0.12"
Cells(3, 1) = "BB"
Cells(3, 2) = "0.02"
Cells(4, 1) = "CC"
Cells(4, 2) = "0.05"
Cells(5, 1) = "DD"
Cells(5, 2) = "0.01"
Cells(6, 1) = "else"
Cells(6, 2) = "0.015"
‘----------------------------------------------------------------
‘ --------------------Copy 截止處 -------------------------
‘指令說明:Cells(r,c) 表示單元格(r,c),例如 cells(4,1) 表示第4 row與第1 column的單元格
記得論壇Copy and Paste 後可能後面加上一些文字,若有請刪除,請注意每行開頭有『’』表示註解,其後的命令都不執行

2-4 第一個巨集data 完整內容如下
Sub data()
Cells(1, 1) = "phenomenon"
Cells(1, 2) = "Defect rate"
Cells(2, 1) = "AA"
Cells(2, 2) = "0.12"
Cells(3, 1) = "BB"
Cells(3, 2) = "0.02"
Cells(4, 1) = "CC"
Cells(4, 2) = "0.05"
Cells(5, 1) = "DD"
Cells(5, 2) = "0.01"
Cells(6, 1) = "else"
Cells(6, 2) = "0.015"
End Sub

2-5 開始執行 data 巨集
離開Visual Basic 編輯器(VBE),到Excel工作表,進入功能表 工具 > 巨集 > 巨集 (快捷鍵 alt-F8) 可以按”執行”來執行 data 巨集,此時工作表就會自動地出現如[表1]的資料

2-6 新增一個按鈕來執行巨集
為了日後方便以及免於記憶,打算在工作表上加上一個按鈕,只要按一下按鈕就可以執行本巨集,作法是
  • 呼叫表單工具箱 (檢視>工具列>表單,或者鼠標在工具列空白處按鼠標右鍵>表單)後出現一個有控制項的表單
  • 單擊"按鈕"控制項,此時滑鼠變成十字形狀
  • 在希望放置按鈕的位置(如C2)按下滑鼠左鍵,拖動滑鼠畫出一個矩形後放開滑鼠左鍵,這樣就添加一個命令按鈕到工作表中,同時EXCEL自動顯示"指定巨集"對話方塊
  • 從"指定巨集"的對話方塊中選擇"data "單擊"確定"。這樣,就把該巨集指定給命令按鈕了
  • 在按鈕的標題"按鈕1"前單擊滑鼠左鍵,開始更改按鈕的標題為”範例data”後,單擊按鈕外的任意位置就可,然後關閉表單工具箱
  • 單擊按鈕就可執行巨集

沒有留言:

張貼留言