一、案例定位

把原本需要反覆手動完成的標題列格式、篩選、欄寬與數字格式,整理成可重複執行的 FormatSalesReport 巨集。

二、學習目標

三、案例情境

學生先手動整理 10 筆銷售訂單,再把相同格式化流程錄製成巨集,避免每次都重新設定欄名、底色、篩選、欄寬與數字格式。

四、開始資料

來源資料範圍為 A4:I14,包含 Order ID、Date、Sales Rep、Region、Product、Qty、Unit Price、Discount、Net Sales;共 10 筆訂單。

五、Excel 分析方法

先啟用 Developer tab → Record Macro,完成標題列粗體、底色、字色、AutoFilter、AutoFit 與數字格式設定後 Stop Recording。來源提供的可複製 VBA:

Sub FormatSalesReport()
    Range("A4:I4").Font.Bold = True
    Range("A4:I4").Interior.Color = RGB(91, 155, 213)
    Range("A4:I4").Font.Color = RGB(255, 255, 255)
    Range("A4:I14").AutoFilter
    Columns("A:I").AutoFit
    Range("G5:I14").NumberFormat = "#,##0"
    Range("H5:H14").NumberFormat = "0%"
End Sub

六、計算結果

本案例沒有新增數值計算;完成標準是標題列格式、篩選、欄寬與數字格式都能一次套用。

七、結果分析與管理解讀

巨集把固定的報表整理流程標準化,降低重複操作與漏設格式的風險。但來源程式碼把資料範圍固定在 A4:I14、G5:I14、H5:H14;若未來新增第 11 筆以上訂單,巨集不會自動擴充到新列。

八、AI Prompt

請解釋這段 FormatSalesReport VBA 程式碼每一行的用途,並指出如果資料列超過第 14 列,哪些固定範圍可能需要調整。請用正體中文回答,VBA 名稱維持英文。

九、思考/What-if