iT邦幫忙

2026 iThome 鐵人賽

DAY 14
0
佛心分享-IT 人自學之術

30 天 從數據思維到自動化稽核實戰系列 第 14 篇

Day 14:AI + VBA 風控自動化巨集(4 階段自動化進化)

  • 分享至 

  • xImage
  •  

https://ithelp.ithome.com.tw/upload/images/20260913/200709690guWij12UC.png
收到!各位打火弟兄注意,我是今天的資料分析兼 AI 戰術教官。裝備檢查完畢,全部給我集中精神進入狀況!

今天的救援任務是推進 「Day 14:AI + VBA 風控自動化巨集(4 階段自動化進化)」!

在銀行與金融風控的火場裡,如果風控人員每天還在手動拉表格、人工用螢光筆塗刷高風險帳戶、再手動另存 PDF 報表,這就跟拿著水桶進火場滅火一樣效率低下且極易出錯!一旦手滑漏標了一個高風險帳戶,或是匯出 PDF 時格式掉頁,合規審計防線就會出現重大漏洞。

以下依照我們的「救災標準作業程序 (S.O.P)」進行全方位的實務拆解與自動化巨集實作:


🚨 1. 災情評估與風險控制 (Size-up & Problem Analysis)

在風控自動化的數據火場中,缺乏階層認知與手動重複操作是引發內部失火的致命盲點:

  • 數據火場的致命盲點:許多分析師將 Excel 自動化誤以為只是「寫幾行 VBA 程式碼」。如果沒有掌握 AI 自動化的 4 階段演進框架,盲目地在不適合的場景中硬套 VBA,或是直接把未經驗證的 AI VBA 程式碼貼入生產環境,程式碼一旦爆錯(如 Run-time error '1004'),會直接導致分行日終結算與風控審計作業瞬間停擺!
  • 打火弟兄最常犯的致命迷思:
    1. 迷思一:「認為 AI 寫出 VBA 巨集後,人就可以完全放手躺平,不再需要品質管理。」 —— 錯!金融與商業風控屬於高度敏感的場景,AI 是提高效率與提供靈感的工具,但人類必須扮演上游的「議題驅動者」與下游的「品質管理者與最終決策者(Quality & Decision Maker)」。
    2. 迷思二:「手動執行重複性的高風險標示與 PDF 導出作業,認為這樣才不會出錯。」 —— 錯!手動重複操作(Manual Repetitive Tasks)本身就是最大的風險來源!人眼在看過數萬筆資料後必然會產生疲勞失誤,唯有建立標準化的 VBA 巨集自動化,才能保證 100% 的執行一致性與合規性。

🧯 2. 戰術下達與核心原理 (Tactical Strategy)

為了建立鋼鐵般的風控自動化防線,我們採用 「AI + Excel 自動化 4 階段進化戰術」,並透過 VBA 實現「高風險警示與 PDF 自動匯出」:

AI + Excel 自動化 4 階段進化框架:

  1. Lv1. 輔助函數計算(Assistant Formulas):
    • 技能重點:運用 AI 撰寫高階 Excel 函數(如 XLOOKUP, 巢狀 IF, TEXT),處理基礎欄位計算與格式轉換,擺脫手動公式編寫。
  2. Lv2. VBA 巨集自動化(VBA Automation):
    • 技能重點:利用 AI 生成可直接執行的 VBA 模組,處理大量檔案合併、條件式自動著色標示、跨表比對與自動導出 PDF 審計報告,實現單鍵自動化。
  3. Lv3. Python 程式搭配協作(Python Collaboration):
    • 技能重點:當資料量衝破 Excel 極限(超過百萬筆)時,轉由 AI 輔助編寫 Python 腳本(Pandas/OpenPyXL),進行巨量資料處理、高級統計建模與視覺化。
  4. Lv4. AI + Human 專家監控(AI + Human Hybrid Governance):
    • 技能重點:進階至 Vibe Coding 與專家思維模式,人類居於上游定義風控問題與優先權,AI 負責執行自動化流水線,人類在下游進行合規稽核與品質控制(Quality Control)。

🚒 3. 黃金救援步驟 (Actionable S.O.P)

事前佈線(Data Preparation & Schema Specification)

我們準備一張來自授信與風控系統的 Risk_Audit_List 工作表(Schema 如下):

  • A 欄:Customer_ID(客戶代號)
  • B 欄:Company_Name(企業名稱)
  • C 欄:DTI_Ratio(負債比率,數值型態如 0.65 代表 65%)
  • D 欄:Credit_Score(信用分數,300-800)
  • E 欄:Overdue_Days(逾期天數)
  • F 欄:Risk_Level(預期風險等級:High, Medium, Low)

深入火場(Analysis & Modeling - 實力練習:完整可作戰之 AI + VBA 自動化巨集)

步驟 1:輸入 AI 的結構化 Prompt(要求生成高風險標示與 PDF 導出 VBA)
# Role (System Prompt)
你是一位金融機構資訊風控與 VBA 自動化專家。

# Task Objective
請幫我撰寫一段 Excel VBA 巨集程式碼,能夠自動掃描 `Risk_Audit_List` 工作表中的授信戶資料,依據風險條件進行儲存格背景自動著色,並將高風險警示結果自動匯出為一份標準格式的 PDF 合規審計報告。

# Rules & Logic Constraints
1. **風險標示規則**:
   - **紅色背景(高風險/CRITICAL)**:當 DTI (C欄) > 60% (0.6) 或是 逾期天數 (E欄) > 30 天。整列填入淺紅色 (RGB: 255, 204, 204),文字加粗。
   - **黃色背景(中風險/WARNING)**:當 DTI (C欄) 介於 40%~60% 或是 信用分數 (D欄) < 600。整列填入淺黃色 (RGB: 255, 255, 204)。
2. **PDF 合規審計報告導出**:
   - 自動將處理完畢的工作表另存為 PDF 檔案。
   - 檔名命名規範:`風控合規審計報告_YYYYMMDD.pdf`。
   - 儲存路徑為當前活頁簿所在資料夾 (`ThisWorkbook.Path`)。
3. **程式碼品質**:需包含 `ScreenUpdating = False` 效能優化與錯誤處理機制 (`On Error GoTo ErrorHandler`)。

步驟 2:完整可上線作戰之 VBA 巨集程式碼(可直接複製貼入 VBE 模組)
Sub Audit_Risk_And_Export_PDF()
    ' =========================================================================
    ' 巨集名稱: Audit_Risk_And_Export_PDF
    ' 功能說明: 自動標示高風險帳戶(紅/黃背景)並導出合規 PDF 審計報告
    ' 適用對象: 風控指揮中心與內部稽核小組
    ' =========================================================================
    
    Dim ws As Worksheet
    Dim lastRow As Long
    Dim i As Long
    Dim dtiVal As Double
    Dim creditScore As Long
    Dim overdueDays As Long
    Dim pdfPath As String
    Dim fileName As String
    
    ' 1. 效能優化:關閉螢幕更新與警告訊息,加速執行
    On Error GoTo ErrorHandler
    Application.ScreenUpdating = False
    Application.DisplayAlerts = False
    
    Set ws = ThisWorkbook.Sheets("Risk_Audit_List")
    lastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row
    
    ' 如果只有標題列沒有資料,直接結束
    If lastRow < 2 Then
        MsgBox "未發現可審核之客戶數據!", vbExclamation, "風控警告"
        Exit Sub
    End If
    
    ' 2. 清除舊有格式 (保留標題列)
    ws.Range("A2:F" & lastRow).Interior.ColorIndex = xlNone
    ws.Range("A2:F" & lastRow).Font.Bold = False
    
    ' 3. 逐列掃描並填入風險警示色彩
    For i = 2 To lastRow
        ' 提取欄位值 (C欄:DTI, D欄:信用分數, E欄:逾期天數)
        dtiVal = CDbl(ws.Cells(i, 3).Value)
        creditScore = CLng(ws.Cells(i, 4).Value)
        overdueDays = CLng(ws.Cells(i, 5).Value)
        
        ' 高風險判定(紅色警戒):DTI > 60% 或 逾期天數 > 30 天
        If dtiVal > 0.6 Or overdueDays > 30 Then
            ws.Range("A" & i & ":F" & i).Interior.Color = RGB(255, 204, 204) ' 淺紅色
            ws.Range("A" & i & ":F" & i).Font.Bold = True
            ws.Cells(i, 6).Value = "High Risk"
            
        ' 中風險判定(黃色預警):DTI 40%~60% 或 信用分數 < 600
        ElseIf (dtiVal >= 0.4 And dtiVal <= 0.6) Or creditScore < 600 Then
            ws.Range("A" & i & ":F" & i).Interior.Color = RGB(255, 255, 204) ' 淺黃色
            ws.Cells(i, 6).Value = "Medium Risk"
            
        ' 低風險(無背景色)
        Else
            ws.Cells(i, 6).Value = "Low Risk"
        End If
    Next i
    
    ' 4. 自動導出合規 PDF 審計報告
    fileName = "風控合規審計報告_" & Format(Now(), "YYYYMMDD_HHMMSS") & ".pdf"
    pdfPath = ThisWorkbook.Path & "\" & fileName
    
    ' 設定列印頁面配置 (橫向、自動調整為單頁寬度)
    With ws.PageSetup
        .Orientation = xlLandscape
        .FitToPagesWide = 1
        .FitToPagesTall = False
        .Zoom = False
    End With
    
    ' 執行 PDF 導出
    ws.ExportAsFixedFormat Type:=xlTypePDF, _
                           Filename:=pdfPath, _
                           Quality:=xlQualityStandard, _
                           IncludeDocProperties:=True, _
                           IgnorePrintAreas:=False, _
                           OpenAfterPublish:=False
                           
    ' 5. 恢復系統設定並向指揮中心回報成功
    Application.ScreenUpdating = True
    Application.DisplayAlerts = True
    
    MsgBox "【風控自動化成功】" & vbCrLf & _
           "1. 高/中風險帳戶已自動著色完成。" & vbCrLf & _
           "2. PDF 合規審計報告已導出至:" & vbCrLf & pdfPath, _
           vbInformation, "風控指揮中心通知"
    Exit Sub

ErrorHandler:
    Application.ScreenUpdating = True
    Application.DisplayAlerts = True
    MsgBox "執行過程發生異常錯誤!錯誤代碼: " & Err.Number & vbCrLf & "描述: " & Err.Description, _
           vbCritical, "風控系統異常"
End Sub

殘火處理與儀表板(Visualization & Risk Dashboard Integration)

  1. 品質管控與殘火驗證(Lv4 人機協作品管):
    風控主管打開導出的 PDF 審計報告,抽查紅色標示列的 DTI 與逾期天數,確認與系統規則 100% 吻合,發揮 Lv4 下游品管(Quality Control)與決策者(Decision Maker)的角色。
  2. 指揮中心自動化銜接:
    此 VBA 巨集可設為每日排程(Task Scheduler)或點擊按鈕觸發,產出的 PDF 報告直接自動派送至風險管理委員會與內部稽核部門信箱。

🛡️ 4. 隊長的精神訓話 (Takeaway)

「自動化進化分四階,VBA 巨集把關最前線;AI 撰寫程式碼,人類品管決策不打折!」


上一篇
Day 13:AI 發想 20 個描述性風控分析題目
下一篇
Day 15:Gartner 四大分析框架於金融風控之應用(描述性分析)
系列文
30 天 從數據思維到自動化稽核實戰 共 19 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言