VBA 是 Excel 自带的脚本引擎,能完成 99% 的"批量重活"。本文给 5 个最常用 VBA 代码范式,复制即用。

范式 1:批量打开并复制

Sub 合并()
  Dim f As String, wb As Workbook
  f = Dir("C:\reports\*.xlsx")
  Do While f <> ""
    Set wb = Workbooks.Open("C:\reports\" & f)
    wb.Sheets(1).Copy After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
    wb.Close False
    f = Dir
  Loop
End Sub

范式 2:批量转 PDF

Sub 全部转PDF()
  Dim sh As Worksheet
  For Each sh In ActiveWorkbook.Worksheets
    sh.ExportAsFixedFormat xlTypePDF, "C:\out\" & sh.Name & ".pdf"
  Next
End Sub

范式 3:通过 Outlook 发邮件

调用 Outlook.Application,把当前 Sheet 截图作为附件发给列表中的人。

范式 4:监听 Worksheet 变化

Private Sub Worksheet_Change(ByVal Target As Range)
  If Target.Column = 5 Then  ' E 列
    Application.EnableEvents = False
    Target.Offset(0, 1).Value = "已审 " & Format(Now, "yyyy-mm-dd hh:nn")
    Application.EnableEvents = True
  End If
End Sub
WPS 表格不支持完整 VBA,但宏录制基本兼容。如对 VBA 依赖深,建议用 Microsoft 365 桌面版。