Hank's Blog

工程人的設計監造VBA工具交流區

前言

一般提到CAD大多數都以為是AutoCAD,但其實CAD版本有好多好多種,只是因為學校通常都先教AutoCAD進行使用,透過教育版的免費制度培養一票AutoCAD的粉絲,在習慣介面之後跳往其他版本的CAD會有點障礙,但因為AutoCAD在後期大多改成訂閱制,導致很多公司行號轉往其他管道使用,筆者所在的機關目前也是使用ProgeCAD作為主力使用。

關於CAD的版本:

  1. AutoCAD(訂閱制)
  2. ZWCAD(中資成分被禁用)
  3. ProgeCAD(買斷制)

如果基本的操作功能不敷使用導致效率低落時,可以透過CAD本身提供的套件進行額外強化,而VBA則是提供套件之一,筆者自2018年起便開始進行AutoCADVBA相關開發,特別介紹啟蒙導師為馬克的營建與電腦,當初就是被他的Excel自動繪製縱坡圖表吸引到,而開始一系列的研究之路。

本系列文主要是介紹筆者在CADVBA上的心路歷程,希望能夠由淺入深,期待各位讀者吸收後也能具備修改VBA程式碼的能力,優化自身工作流程,藉由節省下來的時間來開發更多好用的工具,良性循環。

閱讀全文 »

前言

抽查紀錄表帶去現場寫完後會掃描留存成電子檔,抽查過程通常會拍攝佐證照片檢附於後方,以利呈現給委員檢視抽查過程是否詳實登載,但相信有做過的朋友肯定會覺得這份文件製作過程可說是相當繁雜,筆者本身監造過程也是受了不少苦難,刻骨銘心。

痛點

  1. 抽查記錄表常被要求手寫紀錄,不能用電子檔簽名甚至謄打內容。
  2. 抽查照片上傳至LINE群組,會有過期問題,必須常常下載歸檔,資料夾分類過程也滿麻煩的。
  3. 抽查照片要做成施工抽查表照片報表時,要花很多時間貼照片+撰寫描述文字。
  4. 抽查報表PDF分散,如果要列印很多內容的時候不好找。
  5. 抽查照片雖然分類了,但如果要找到指定的抽查表編號相關照片可能不好找。

如果沒有每天做一些活,到了查核或督導的時候會很可怕的...

解決方案

開發一套全端的系統,可以做到下列事項

  • 管理各個專案(工程名稱)
  • 管理各個專案下的抽查表及照片
  • 從抽查表清單列印指定的抽查表範圍
  • 找到指定的抽查表的第幾次的照片

預期成果

Fig1. 報表成果

閱讀全文 »

前言

道路標線,乃依據道路交通標誌標線號誌設置規則所繪製而成,於CAD上常用聚合線、陣列、圖塊來呈現,平面圖上繪製、標註、數量彙總,最後讓施工廠商據以施工,,無論是標線或圖塊皆需要換算其施作面積(m2)計價。

操作對象

  • 聚合線
    • 路面邊線、禁止臨時停車線、禁止停車線...等
  • 陣列
    • 枕木紋行人穿越線、路口行車引導線...等
  • 圖塊
    • 右轉箭頭、左轉箭頭、機車停等區...等

工作流程中最繁瑣的步驟針對每個標線標示其線名及長度,再根據各個不同線名登打數量公式,本篇文章介紹如何透過AutoCAD VBA的方式,將各個操作對象原先的工作流程進行簡化。

閱讀全文 »

前言

當網站寫好後,依照公司內部組織分層負責,權限分為編輯、讀取、拒絕,每個分頁通常都會有指派的人員進行編輯,相關人員進行讀取,不相干人等禁止進入(同時也是為了避免資訊外流),故在進入網站之前,會要求用戶提供帳號密碼,這時候公司內部如果有AD(Active Directory)管理帳號密碼會非常方便。

舉例:工程審查系統,可編輯者為設計股,可讀取者為工事股。

操作流程

  1. 網站入口要求提供帳號密碼
  2. 根據該帳號密碼到AD確認名稱、組織資訊
  3. 根據組織資訊開啟相對應的頁面
閱讀全文 »

🚩使用者情境

想請問有沒有可能用VBA 去做一般公司行號發函的系統,因為目前公司是土法煉鋼用WORD去打,但是每次都要做兩個檔案正本跟副本,因為有時候發文是需要發給業主跟PCM,甚至是發文編號也能系統根據日期自動整理產生

🛒需求分析

基本流程

graph TD;
    A[接獲單位來文] --> B{開始進行公文填寫};
    B -->|手動填寫| C[取得公文文號];
    B -->|匯入範本| C;
    C --> D[輸入主旨、說明];
    D --> E[選取附件內容];
    E --> F[選擇正副本收文對象];
    F --> G[提送表單];
    G --> H{是否為通用類型?};
    H -->|是| I[建立為範本] --> J[列印公文];
    H -->|否| J[列印公文];
閱讀全文 »

前言

公共工程的預算書編制流程中,PCCES(公共工程預算編制系統)所產出的成果有Excel或XML,Excel檔案最常令人頭痛的問題就是項目名稱過長時容易有文字不連續的問題,要轉移至其他自己編寫的小工具進行利用時需要先將這個文字部分整理後才能進行。以前筆者曾經撰寫過 Excel 版本的 XML 後處理工具,但考量到部分使用者可能沒有安裝 Excel,或是公司資訊部門封鎖了 Excel VBA 的相關功能,因此筆者決定開發一個線上版的工具供大家使用。

此外,這次的開發過程,我也順道利用 ChatGPT 來實作整個專案,並根據 AI 產出的架構逐步調整與優化,測試一下 AI 在程式開發上的能力。

閱讀全文 »

前言

公部門工程案要上網招標之前都會需要製作招標文件及投標表單,其內容包含:

招標文件

  • 工程採購契約
  • 投標須知

投標表單

  • 標單
  • 標封
  • 投標文件審查表
  • 退還押標金申請單
  • 押標金查詢同意書
  • 使用印章授權書
  • 投標廠商聲明書
  • 投標切結書
  • 身分揭露表

既有作法是利用WordVBA搭配Excel內容套印,但若招標文件有版本更迭時,需要將每個同仁的檔案進行更換才能進行正確的內容輸出,這對於版本控管有相當大的難度。

為了減少版本更迭的問題,目前設計直接將最新的內容推送到伺服器位置,前端則利用網頁進行資料填寫,自此就能夠及時輸出最正確的資料,希望透過這樣的設計能夠減少招標文件產製的版本疏漏。

閱讀全文 »

前言

資料庫介紹

資料庫(此為關聯式資料庫)的主要用途是為資料提供一個儲存空間,讓使用者可以進行讀取、寫入、修改、刪除等功能。

關聯式資料庫常見如下:

  • MySQL 和 PostgreSQL 是開源且廣泛使用的選擇,適合中小型應用程式
  • Microsoft SQL Server 通常用於大型企業解決方案
  • SQLite 則是一個輕量級的資料庫,適合用於嵌入式應用或單機應用。

申請雲端服務

本篇文章介紹的部分為Clever Cloud 所提供無料的 256MB PostgreSQL 服務,適合需要基本資料庫功能的小型應用程式。

重要參數

當您成功註冊並啟用 PostgreSQL 服務後,只需要取得一項重要參數 CONNECTION_URI即可開始使用雲端資料庫。

閱讀全文 »

背景

上級單位需要管考目前管理處執行中的工程案件,建立農田水利設施工程管考系統(以下稱外部系統)供各管理處進行填報,然而管理處於前期便已建立工程管考E化系統(以下稱內部系統)做為內部資料的收集,監造單位需要在內部系統先進行填寫後,再由管理單位進入外部系統將內部系統資料再重新謄打一次。

為進行外部系統資料填報,最理想的狀況當然是能透過內部系統自身觸發器(Trigger)執行外部系統API發送,內部系統資料庫異動時也能一併修改到外部系統的內容。

然而今日沒有外部系統API使用,需要另外想辦法從原本的資料庫撈取資料進行網頁自動化填報才能省事,首先要確認內部系統的資料庫欄位是否能進行資料梳理,再者確認網頁自動化填報做法為何。

閱讀全文 »
0%