以Sub執行Function與電纜容積率查詢:Excel VBA在電氣工程設計之應用(附光碟) | 運動資訊第一站 - 2024年11月
以Sub執行Function與電纜容積率查詢:Excel VBA在電氣工程設計之應用(附光碟)
國內第一部系列叢書介紹Excel VBA在電氣工程設計之應用,諸如電流、電壓降計算,線徑、管徑選擇與電纜容積率查詢等。利用Excel VBA讓這些計算、篩選、查詢等自動執行既正確又迅速,書本內的程式碼全部公開透明、簡單易懂、可以套用與修改,是從事電氣工程設計必備的工具書。擁有這些書不僅可以提升執行效率、更難得的是可以與作者直接討論諮詢,得到作者的免費服務與教導。
在電氣工程設計中有關負載電流計算、電壓降計算、線徑選擇、管徑選擇、電纜容積率查詢等是個相當重的工作量,若能以Excel VBA來讓這些計算、選擇、查詢等自動的產生,將會節省許多工時又正確,而市面上有關Excel VBA的書籍只針對一般大眾使用者來寫,並沒有專門針對上述的需求來寫,這對於電氣設計人員來說,寫這些程式相當困難,而這本書正可以解決這個問題,更可貴的是,若您對書中有任何不懂的地方,作者歡迎您與他共同研討,讓程式更便利更友善,進而協助更多的人。
■ 適用對象
☆ 電機工程師 ☆ 從事電氣工程設計者 ☆ 工程顧問公司 ☆ 電機技師事務所 ☆ 個人電氣設計工作室
作者簡介
王鴻浩
經歷:
1. 協和工商 專任教師 (1年)
2. 台電約聘電機工程師 核能三廠建廠工作 (4年10個月)
3. 和睦建築師事務所 電機工程師 中正紀念堂國家劇院/音樂廳 電氣工程監工 (1年半)
4. 益鼎工程顧問公司 電機工程師 核能三廠現場查證工作 (1年半)
5. 泰興工程顧問公司 電機組長 (25年) 嘉義焚化爐/基隆焚化爐/宜蘭焚化爐/岡山焚化爐電氣工程設計、華新麗華不銹鋼廠電氣工程設計、國光發電廠電氣文件圖面審查工作、高雄捷運紅線電氣工程施工設計、美國煤炭氣化發電廠電氣工程設計、中國鋼鐵公司/中龍鋼鐵公司專案電氣工程設計
目前退休從事寫書工作
著作:
1. 第一部書:Excel VBA 在電氣工程設計之應用-電流電壓降計算與線徑管徑選擇
(整合原先 Book 1-工作表函數、Book 2-Function 副程序、Book 3-Sub 副程序)
2. 第二部書:Excel VBA 在電氣工程設計之應用-以Sub 執行 Function 與電纜容積率查詢
(整合原先 Book 4-以 Sub 執行 Function 與表單操作、Book 5-電纜容積率查詢與進階應用、Book6-電纜方塊圖與電纜容積率進階)
3. 第三部書:Excel VBA 在電氣工程設計之應用-電纜路徑表單操作連接 Link 與自動排程
(整合原先 Book 7-電纜路徑表單操作、Book 8-電纜路徑連接 Link、Book 9-電纜路徑自動排程)
4. 第四部書:Excel VBA 在電氣工程設計之應用-分電盤負載表與馬達變壓器保護協調曲線繪製
(整合原先 Book 10-電纜線徑計算與路徑排程整合進階、Book 11-分電盤負載表、Book 12-馬達變壓器與保護協調曲線繪製)
5. 第五部書:Excel VBA 在電氣工程設計之應用-分電盤單線圖結線三線圖繪製與照明接地計算
(整合原先 Book 13-單線圖繪製、Book 14-分電盤結線三線圖繪製、Book 15-照明與接地計算)
4A.以SUB執行FUNCTION與表單操作
內容概要
使用前注意事項
4B.工作表函數 / FUNCTION( ) / SUB( )優缺點比較表
4C.錄製巨集
1.錄製COPY(複製)動作的巨集
2.錄製滑鼠下拉AUTOFILL(自動填滿)動作的巨集
4D.儲存格的表示方法
1.表示一個儲存格時
2.表示一個儲存格以上(複數儲存格)時
3.其他
4E.如何用一次操作來執行工作表整個的計算
當計算用工作表函數時
方式1.用Copy複製方式
方式2.用AutoFill自動填滿方式
方式3.用FormulaR1C1絕對參照方式
方式4.用直接貼上公式方式
當計算用FUNCTION()副程序時
方式1.用Copy複製方式
方式2.用AutoFill自動填滿方式
方式3.用FormulaR1C1絕對參照方式
方式4.用直接貼上公式方式
當計算用SUB()副程序時
方式:用主程序去執行副程序
4F.變更開始與終止計算的列數位址
輸入方塊(INPUT BOX)
訊息方塊(MSG BOX)
方塊綜合運用
4G.讓程式自動去找尋計算資料表的最後一列
4H.以SUB()來執行FUNCTION()
1.自動抓取最後一列ROW=WSXX.USEDRANGE.ROWS.COUNT
2.以輸入方塊來指定計算的終止列數
3.以輸入方塊來指定要開始計算與終止的列數
4.在SUB()執行FUNCTION()但直接以答案結果放入儲存格
4I.以SUB()執行SUB()
以輸入方塊來指定要開始計算與終止的列數
4J.表單之操作
如何開啟表單
表單之建立
表單之屬性視窗
參數設定之表單建立
命令按鈕
電纜安全電流表1-2與2-2之修改
線徑計算選擇的程式碼修改
參數設定與變更"表單的程式碼撰寫
如何呼叫出表單
"變更後離開"按鈕的程式碼撰寫
"取消按鈕"的程式碼撰寫
開啟密碼之設定
主表單之建立
活頁簿開啟密碼之程式碼撰寫
呼叫出MainForm
輸入命令方塊的程式碼撰寫
取消命令方塊的程式碼撰寫
讓表單關閉鈕無效
移交活頁簿之操作
表單2之建立
表單2之程式碼撰寫
以自動找尋與開啟方式
以開啟舊檔視窗方式
4K.第2段與第3段線徑的另外一種求法
表1-2與表2-2 安全電流表的再修改
BH 欄位: 每相條數(QTY/PH) (2ND)
BK 欄位: 相線線徑(2ND)
BO 欄位: 每相條數(QTY/PH) (3RD)
BR 欄位: 相線線徑(3RD)
4L.電纜各個路徑拆開與加總的另外一種求法
電纜各個路徑拆開之方式
RACEWAY工作表之建立
電纜路徑 (AU欄位)拆開
電纜路徑長度選取與加總
電纜路徑單線圖與群組路徑輸入
4M.總結
作者建議
5A.電纜容積率查詢與進階應用
內容概要
使用前注意事項
5B.如何找尋出相同的字串
方式1:以STRCOMP函數來尋找
方式2:以INSTR函數來尋找
方式3:以LIKE運算子來尋找
工作表"LV-SAMPLE(4)"的再修改
增加電纜容積率查詢用之工作表(TRAY-FILL)
5C. 電纜容積率查詢表
DA 欄位: 電纜編號(CABLE NO.)
DB 欄位: 電纜條數(N1*N2) (接地線除外)
DC 欄位: 電纜總截面積(接地線除外)(MM2) (A1)
DD 欄位: 電纜總條數(含接地線)(N1*N2+N3)
DE 欄位: 電纜總截面積(含接地線)A3=(A1+A2)(MM2)
DF 欄位: 迴路數(CIRCUIT)
DG 欄位: 電纜外徑總和(MM)
A2 儲存格: 電纜托架編號 (CABLE TRAY NO.)
B2 儲存格: 總迴路數 (CIRCUITS)
C2 儲存格: 電纜總條數 (接地線除外) (N1*N2)
D2 儲存格: 電纜(N1*N2)條總截面積(A1)(MM2)
E2 儲存格: 電纜總條數(含接地線)(N1*N2+N3)
F2 儲存格: 電纜總截面積(含接地線)A3=(A1+A2)(MM2)
G2 儲存格: 電纜托架MM(W)XMM(H)(現有尺寸)
H2 儲存格: 容積率 AREA %
I2 儲存格: PVCCNS標準導線管管徑MM (IN)
J2 儲存格: 容積率 AREA %
K2 儲存格: RSGCNS標準導線管管徑MM (IN)
L2 儲存格: 容積率 AREA %
M2 儲存格: 電纜托架MM(W)XMM(H)(接地線佈設方式:3)
N2 儲存格: 容積率 AREA %
O2 儲存格: 電纜托架MM(W)XMM(H)(接地線佈設方式:1或2)
P2 儲存格: 容積率 AREA %
Q2 儲存格: 全部大條電纜總外徑(MM)
R2 儲存格: 電纜托架CABLE TRAYMM(W)XMM(H)(單層排列)
5D.線徑鎖定與安全電流核對
EA 欄位: 線徑是否鎖定(Y)
EB 欄位: 每相條數QTY/PH(N1)鎖定
EE 欄位: 線徑鎖定(MM2)
EC 欄位: 條數(N2)
ED 欄位: 心數(CORE NO.)
EF 欄位: 鎖定線徑電流值
EG 欄位: 線徑鎖定安全電流核對
R 欄位: 每相條數(Q'TY/PH)(N1)
S 欄位: 條數(N2)
T 欄位: 心數(CORE NO.)
U 欄位: CABLESIZE相線線徑(MM2)
修改副程序SUB FUNCTION_LV_TEST3
5E.進階應用-輸入資料核對與錯誤訊息顯示
刪除計算資料
線徑鎖定解除之檢查核對
輸入資料空白檢查
顯示計算狀態與計時
儲存格自動框線
線徑選取段數的註解
鎖定線徑之安全電流核對
主程序修改
5F.耐短路電流強度檢查與核對
工作表DATA-BASE的再修改
工作表LV-SAMPLE (4)的再修改
EJ 欄位: 電纜頭端短路電流值或BREAKERI.C.值(KA)
EK 欄位: 電纜頭端短路容量(KVA)
EL 欄位: 電纜頭端X/R比值
EM 欄位: 電源端等效電阻R(PU)
EN 欄位: 電源端等效電抗X(PU)
EO 欄位: 電纜等效電阻R(PU)
EP 欄位: 電纜等效電抗X(PU)
EQ 欄位: 總電阻R(PU)
ER 欄位: 總電抗X(PU)
ES 欄位: 總阻抗Z(PU)
ET 欄位: 總阻抗X/R比值
EU 欄位: 電纜末端短路電流值(KA)(SYM)
EV 欄位: 非對稱係數K
EW 欄位: 電纜末端短路電流值(KA)(ASYM)
EX 欄位: 短路時間(SEC.)
EY 欄位: 電纜運轉最高溫度(TA)(℃)
EZ 欄位: 電纜短路時最高溫度(TM)(℃)
FA 欄位: 電纜最小線徑(MM2)BASED ON N1
FB 欄位: 電纜耐短路電流強度核對
5G.基本資料工作表與程式碼的保護
基本資料工作表DATA-BASE的隱藏保護
儲存格的保護
程式碼的保護
工作表內容自動清除
計時延時動作
5H. 流程邏輯整合與指定命令按鈕
5I. 實用小技巧
5J.總結
作者建議
6A.電纜方塊圖與電纜容積率進階
內容概要
使用前注意事項
6B.實用小技巧
1. 移動捲軸到希望的位置
2. 變更儲存格屬性
3. 繪製儲存格框線
4. 將一個儲存格內多行資料分別放在每列中
Case 1-複製工作表/其他欄位相同複製至每列
Case 2-複製工作表/其他欄位只複製一列
Case 3-在自己工作表執行
回復測試原始資料
5. 字串連接
方式1-以"&"運算子
方式2-以Join函數
6. 排序
7. 如何挑取出不重複的名稱或編號
方式1-使用Delete刪除相同的
方式2-使用相同的跳過不相同的檢出
8. 篩選與進階篩選
單一條件篩選
多重條件篩選
準則範圍篩選
6C.電纜方塊圖(CABLING BLOCK DIAGRAM)
方式1 儲存格不合併
1. 工作表LV-Sample (4)電纜方塊圖程式碼
2. 工作表"IC-Cont"電纜方塊圖程式碼
3. 工作表"IC-Inst"電纜方塊圖程式碼
方式2 儲存格合併
1. 工作表LV-Sample (4)電纜方塊圖程式碼
2. 工作表"IC-Cont"電纜方塊圖程式碼
3. 工作表"IC-Inst"電纜方塊圖程式碼
方式3 變更輸入開始列號
1. 工作表LV-Sample (4)電纜方塊圖程式碼
方式4 加入次設備編號
1. 工作表LV-Sample (4)電纜方塊圖程式碼
清除前一筆資料重置
6D.製作接線表(WIRING TABLE)
6E.電纜容積率的另一種求取法
表列出整個電纜容積率查詢
1. 在自己的工作表內排序
2. 在其他的工作表內排序
單一電纜容積率更新
新增電纜容積率查詢
整合更新與新增電纜容積率查詢
更新電纜容積率程式碼之修改
新增電纜容積率程式碼之修改
主程序之程式碼
以全部電纜托架編號為基準之電纜容積率
複製Raceway No.
主程序之程式碼
6F.電纜托架尺寸與數量估算
主程序之程式碼
複製設備編號
設備編號排序
挑取出不重複的設備編號
FROM端小線徑電纜之總截面積
TO端小線徑電纜之總截面積
小線徑電纜之電纜托架數量
FROM端大線徑電纜之外徑總和
TO端大線徑電纜之外徑總和
大線徑電纜之電纜托架數量
6G.總結
作者建議
序
凡從事過電氣工程設計者,大概都會接觸到負載電流計算、電纜線徑之選擇、電壓降計算與電氣導線管管徑之選擇,這一連串之計算與選擇,若只有幾條電纜則可以用人工方式來做,但若是電纜有上百條甚至上千條,那麼以人工就會相當耗時而且容易出錯,此時若懂得以 Excel 這個應用軟體來做,不但省時又很正確,這就是這本書撰寫之目的,所以這是一本工具書,是針對電氣工程設計人員而寫的。
一般而言,從事電氣工程設計的人,大部分對於 Excel 程式不會很熟悉,要以 ExcelVBA 來寫出適合專案的計算,實在有些困難,因為不懂得程式語言;而學程式設計的人要來寫這些東西也不容易,因為他們對於電氣計算公式與前後對應關係不熟悉,除非兩者要配合來完成,才能符合真正所需與符合人機介面之操作。
Excel 是一種計算功能很強之應用軟體,其應用於電氣計算可包含於下列:
1. 自動搜尋功能
2. 自動數學計算功能
3. 繁瑣動作之簡化
一般在電氣工程設計可應用於下列計算:
1. 照度計算
2. 接地計算
3. 電流計算
4. 電壓降計算
5. 線徑選擇
6. 管徑選擇
7. 繁瑣複製、刪除等動作之簡化
8. Raceway 內電纜數量與容積率查詢
9. 各種電纜長度加總
10. 短路故障電流計算
11. 保護協調曲線繪製
使用之 Excel 函數程序如下:
1. 工作表函數:如 IF、 OR、 AND、 SUM、 SUMIF、 LOOKUP、 VLOOKUP、INDEX、 MATCH、 COUNTIF、 CONCATENATE 等
2. Function 函數或程序
3. Sub 程序
4. 錄製巨集
5. 樞紐分析
以上所述之計算或篩選,可以採用三種方法來達成:
1. 以 Excel 工作表函數來做
2. 以 VBA 程式碼之 Function 語法來做
3. 以 VBA 程式碼之 Sub 語法來做
因為內容繁多,所以將分成五部書來介紹解說如下
1. 第一部書:Excel VBA 在電氣工程設計之應用-電流電壓降計算與線徑管徑選擇
(整合原先 Book 1-工作表函數、Book 2-Function 副程序、Book 3-Sub 副程序)
2. 第二部書:Excel VBA 在電氣工程設計之應用-以Sub 執行 Function 與電纜容積率查詢
(整合原先 Book 4-以 Sub 執行 Function 與表單操作、Book 5-電纜容積率查詢與進階應用、Book6-電纜方塊圖與電纜容積率進階)
3. 第三部書:Excel VBA 在電氣工程設計之應用-電纜路徑表單操作連接 Link 與自動排程
(整合原先 Book 7-電纜路徑表單操作、Book 8-電纜路徑連接 Link、Book 9-電纜路徑自動排程)
4. 第四部書:Excel VBA 在電氣工程設計之應用-分電盤負載表與馬達變壓器保護協調曲線繪製
(整合原先 Book 10-電纜線徑計算與路徑排程整合進階、Book 11-分電盤負載表、Book 12-馬達變壓器與保護協調曲線繪製)
5. 第五部書:Excel VBA 在電氣工程設計之應用-分電盤單線圖結線三線圖繪製與照明接地計算
(整合原先 Book 13-單線圖繪製、Book 14-分電盤結線三線圖繪製、Book 15-照明與接地計算)