Excel VBA-快速管理之應用與效益探討

台聯工程顧問公司 李彥鋒 土木技師

柯鎮洋 董事長

一、摘要

營建管理,涵蓋專案動工前的計畫與準備、施工中的安全與品質、以及完工後的驗收與移交。管理內容,不外乎是將施工過程中現場蒐集的人、機、料數據,透過內業彙整及分析,以報告、圖表等手法,呈現階段性成果。因此各公司管理目的都相同,區別在於所使用的工具,是否能快速提供正確的紀錄。而照片是所有紀錄中,最能呈現當下的實況,若能在當天提出有檔名定義的照片,不但使製作的報表具有可靠性,未來回顧時也能迅速尋得正確的照片。

爰此,筆者以Excel VBA開發出快速更換照片檔名的應用程式,並撰寫本文,探討、說明效益,提供業界或同好參考引用。

二、簡介

應用Excel VBA,實現快速賦予工程照片的檔名,是筆者參加高雄市土木技師公會舉辦的Excel VBA課程後,再參考其他書籍或網路資料,所寫第一個比較實用性的成果。而選擇更改照片檔名,作為開發的第一支程式,是因為迅速更改照片名稱,可以解決筆者過去遭受的痛苦。三十多年來,筆者絕大部分工作,都是在工地蒐集施工資料,再進辦公室整理分析與彙整報告,其中處理照片是最大宗的工作。要有生動及真實的即時報告,就要勤跑現場和多拍照片,而越是要做得好,就要拍得多,結果花費整理的時間也就越長,況時日一久,也難以找到需要的照片,所以過往都是以日期作目錄,再以手工更改照片名稱,以方便尋找。直到聆聽高雄市土木技師公會黃克紹技師的課程,頓時覺得值得開發這個程式,也終於完成。

使用此程式很簡單,首先在電腦D槽根目錄,先設定兩個目錄(一個是存照片來源、另一個存更名後照片),再將照片下載到照片來源目錄,接著執行本程式,即可在視窗看到要更改檔名的照片。依照片的內容,在已建立的分類名稱定義中依序打開清單,點選適合的定義,當瀏覽及選定全部名稱定義,即完成一張照片的命名動作。程式會自動提供日期於新檔名的開頭,以及在末端給予序號,前後之間,有八組不同的檔名定義資料庫。如果程式中已經建立的定義資料,程式會自動列出來等待點選,沒找到適合的定義時,也可以退出視窗,到資料庫中增加擴充。

當一個專案結束後,此資料庫即可直接運用於下一個同性質專案,如果專案性質不同,那就在使用時,依實際需求做修改及補充。因此,資料庫可以隨時擴充、刪除或合併其他專案的資料庫。簡單的說,應用於幾個專案後,即可建立完整的資料庫。

三、程式介紹

在執行程式前,必須先在D:\槽下,新增"未更名照片"、及"照片更名後"兩個子目錄,再將要被更名的照片存在"未更名照片" 子目錄裡,程式會把更名後的照片,另存於"照片更名後"的子目錄裡。程式會把更名後的照片,存在"未更名照片"的子目錄裡。

(一)程式執行

開啟程式後,在"執行"工作表裡,會有一個"開始更改照片名稱"的按鈕(圖例1),按了此按鈕,即顯示更換照片檔名的視窗。

1280-2-1

圖例1

更改的名稱確定後,按圖例2右下方的"儲存新檔名"按鈕,原照片的檔名立即變為新檔名,並複製一張新檔名的照片於"照片更名後"的目錄裡。

開啟程式後即產生更名視窗(如圖例2)。

1280-2-2

圖例2 更改照片檔名視窗

(二)視窗選項說明

1.更改後檔名:在第6.選項中,當選定一個檔名定義的選項,立即在此欄顯示最新的檔名。

2.預覽框:顯示被選定要更名的照片。

3.照片歪比調整桿:顯示框為固定比例,當照片顯示後,因原比例不同而產生變形,可利用X向或Y向的調整桿做比例修正,更名後原照片或新增照片,仍會儲存成原有比例。

4.選擇照片:按此欄右邊倒三角形,會產生供點選的更名前照片清單,點選後預覽框及選擇照片欄,即為選定的照片及原檔名。

5.換一張:按此雙三角形,照片會一張一張切換以供點選,切換時預覽框及選項照片欄,立即換成新點選的照片及原檔名。

6.照片名稱定義:為避免名稱混淆而有八種統一命名的名稱定義,內容必須事先在"照片整理"工作表,各自相對應的欄位中輸入資料後,才能在此顯示及選取。

7.名稱定義清單:當選定一個名稱定義後,此清單即顯示其資料庫之所有資料等待選定。

8.選擇照片名稱定義後之對應欄位:一共有十欄,除了8.1日期與8.10序號,由程式自動產生外,其餘由第6.選項中選定,同時於對應之第8.2~8.9選項各欄顯示。

第8項各欄說明:

8.1日期:格式為yyymmdd共七碼,由程式自動提供。

8.2分類:拍此照片之目的(如督導、查驗、檢查、會勘等)。

8.3拍照地點:照片拍攝的地點(分區及編號,如28M-1道路左側、大業路路口等)。

8.4拍照部位:顯示照片要表現的明確位置(結構及編號+部位,如箱涵C1底板、箱涵B2側牆、箱涵D3側牆及頂板等)。

8.5起訖里程:在照片的里程範圍選取最接近的里程,可能是某區間或某一點(先選接近的數字"0K+080~100",再改成正確的數字如"0K+080~0K+095")。

8.6施工項目:相關的施工作業(工程施工的材料及作業名稱,如混凝土澆置、CLSM澆置、瀝青混凝土鋪設等)。

8.7試驗項目:依契約及規範指定之檢驗項目(如混凝土廠驗、氯離子試驗、坍度試驗、混凝土試體製作、混凝土鑽心取樣等)。

8.8結果:照片呈現的結果或用途(如龜裂、缺失、現象等結果,或改善回報,或僅僅施工現況)。

8.9拍照人:應為拍此照片的人(於改名稱時選定)。

8.10序號:序號由程式自動提供,一次更名最多可以處理99張(序號01~99),第100張以後之照片不會處理,需手動將更名的照片移走,才能再處理另外99張照片。

當以上十欄位內容有需要調整時,均可在視窗第8選項各欄中,個別手動更改,並且會自動在第1選項"更改後檔名"中立即更改,或直接在第1選項"更改後檔名"修改,此時的變動,並不會影響檔名資料庫的內容。

9.儲存新檔名:當依序選完名稱定義並確認無誤後,即可按此鈕更改照片名稱。

10.結束更名:離開更名視窗。

(三)程式操作應注意事項

1.當天日期會自動加入,所以每天的照片,最好當天下班前完成更改檔名,留到隔天再處理,就要手動更改日期。

2.一次最多可以顯示99張照片,拍照人一天處理的照片,超過99張時就要分批處理,此時會有檔名重複而無法改名的風險。

3.照片名稱由系統設定之選項及字串指定,無須人為輸入(除非里程無法事前確定),若選項內容不足,則在「照片整理」工作表對應欄位增加。

4.看照片說故事,以照片顯示內容點選檔名,必須完全符合照片原意,否則以後會找不到要的照片。

5.執行更改名稱前應先檢視一遍,將不要的照片事先刪除,以免產生過多無用的垃圾照片。

6.照片更名後繼續下一張時,前一張的儲存名稱,會留在視窗畫面的第1.選項"更改後檔名",但序號不同。當新一張照片內容類似時,即可直接儲存或簡單修改,以節省時間。

7.照片改名儲存後才發現名稱不對時,可以繼續更正檔名再儲存,來源照片的檔名,會留存最後確定的檔名,但已經儲存在"照片更名後"目錄裡的錯誤檔名照片還會存在,這時需要以人工刪除。

8.同一張照片,可以重複儲存不同的照片名稱,所以對於照片有多種用途時,也可以給不同的名稱,滿足不同的需求。

(四)使用此程式的效益

1.節省時間:再久遠的照片,利用有定義的照片名稱,可以迅速的找出,以還原歷史真相。

2.教育訓練:無工程經驗的新人,透過更改照片名稱,可以快速學習到工地的作業實務。

3.測試實力:在應徵新人時,當作實務操作的測試項目,以測驗應徵者的真正實力。

4.分工合作:當資深工程師忙於外業,可以直接透過社交媒體,傳現場照片回辦公室,由後端資淺工程師、或無工程背景的行政人員處理,也能快速精準的賦予照片正確名稱。

5.反映現實:快速提出即時的照片,可使關心專案的人士,透過網頁或內部網路系統,瀏覽當期照片,了解專案最新的實際狀況。

6.拍一存多:一張照片可以表現多種目的時,當下可以給予不同的名稱,例如內容可以表現施工步驟,同時又有環境衛生優點時,就可先後存成兩張不同檔名照片。

7.整理分類:有定義的照片名稱,在應用歸類時,可以應用程式快速整理。

8.精準命名:照片檔案名稱,是選用系統設定之分類及指定的字串,不是人為隨興給予,不會因人而有不同用詞,且隨著時間越久,資料也越完整,命名也就會越精準。

9.經驗傳承:類似專案可以複製使用,因此經驗可以累績傳承。

四、結論

營建專案管理的目標,基本是安全、品質、進度、成本、協調等五大範疇。每個專案契約,均有要求廠商定期提供階段成果之報表、及分析的各種資料,而照片是呈現專案當下的真實現況,也是這些階段性成果的佐證資料。

專案執行過程中,有賴專案每一位工程師,以誠實的態度、實事求證的精神,證實專案的品質,值得業主給予相對計價項目及金額。而施工過程中的臨時性作業、或完工後的隱蔽性位置佐證資料,更是以照片最值得信任,因此契約都會要求廠商,在各期月報或計價檢附當期施工照片。如果照片賦予檔名定義,在日後查證資料真實性時,可由檔名日期、相關位置以及拍照人,迅速找到原始電子檔。

五、誌謝

筆者從開始學習程式至今已近三年,過程中確實遇到許多瓶頸,不時有「如果這樣或應該那樣才能更好」的靈感,也經常半夜裡,有得不到解答,誓不罷休的情形。感謝有香港朋友劉建生先生,隨時解答筆者碰到的問題;還有高中同學邢定首先生,經常用淺顯易懂的比喻提點筆者;也要感謝高雄市土木技師公會,在107年的土木日系列活動,邀請黃克紹講師(大地技師、土木技師)開辦「EXCEL VBA與工程自動化講習會」,使筆者全力投入開發程式的領域;還要感謝華梵大學鄭清江教授(大地技師、土木技師),原本筆者只純粹為改善個人工作環境而寫,由於鄭教授的鼓勵而投稿;另外,感謝的是筆者就職台聯顧問公司的董事長柯鎮洋(結構技師、土木技師),同意將此程式於工地推廣及幫忙校稿;最後感謝的是筆者的家人,因為學習及程式寫作過程,失去許多相聚的寶貴時光。

參考文獻

1.黃克紹(2018),「EXCEL VBA與工程自動化講習會」,高雄市土木技師公會107年土木日系列活動,高雄。

2.Michael Alexander、Dick Kusleika(2020),姚瑤、王戰紅(譯),Excel VBA Power Programming全方位實作範例聖經。

【本文稿經由台灣省土木技師公會技師報同意轉載;未經允許請勿任意轉載】

 



【版權重要說明】:本網站內容係由該著作權人或團體同意下轉載、或由該作者或會員自行創作上載發表之沒有違反著作權之圖稿內容,一切內容僅代表該個人意見,並非本網站之立場,本站不負任何法律責任;若讀者認為文章或評論有侵權不妥之處,請與聯絡我們,將儘速協同處理;同時未經本網站同意請勿任意轉載內容,我們也將保留一切法律追訴權利。