把文档发给AI处理前,我用一个按钮把敏感信息全部隐藏了
专注AI办公提效 🚀 每周分享实测好用的AI办公技巧Excel自动化 / 会议纪要AI化 / 智能招投标
写在前面
先看效果
核心架构:三件套
实操步骤
Step 1:建一张Excel映射表
💡 小技巧:脱敏内容建议用有辨识度的字符串(比如加方括号【张**】),避免AI生成的内容里恰好出现相同字符导致反向恢复时误替换。
Step 2:把VBA代码粘贴到Word
打开Word,按 Alt + F11 打开VBA编辑器 在左侧找到 Normal → 右键 → 插入 → 模块 把下面的代码全部粘贴进去
' ===== 正向脱敏:发送给AI前使用 =====Sub 正向脱敏_发送给AI()Application.ScreenUpdating = FalseDim xlApp As Object, xlBook As Object, xlSheet As ObjectDim i As Integer, lastRow As IntegerSet xlApp = CreateObject(”Excel.Application”)Set xlBook = xlApp.Workbooks.Open(”D:\映射表.xlsx”) ' ← 改成你的实际路径Set xlSheet = xlBook.Sheets(1)lastRow = xlSheet.UsedRange.Rows.CountFor i = 2 To lastRow ' 第1行是表头,从第2行开始Call BatchReplace(xlSheet.Cells(i, 1).Value, xlSheet.Cells(i, 2).Value)Next ixlBook.Close FalsexlApp.QuitApplication.ScreenUpdating = TrueMsgBox ”脱敏完成,可以发给AI了!”End Sub' ===== 反向恢复:AI返回后使用 =====Sub 反向恢复_从AI取回()Application.ScreenUpdating = FalseDim xlApp As Object, xlBook As Object, xlSheet As ObjectDim i As Integer, lastRow As IntegerSet xlApp = CreateObject(”Excel.Application”)Set xlBook = xlApp.Workbooks.Open(”D:\映射表.xlsx”) ' ← 改成你的实际路径Set xlSheet = xlBook.Sheets(1)lastRow = xlSheet.UsedRange.Rows.CountFor i = 2 To lastRowCall BatchReplace(xlSheet.Cells(i, 2).Value, xlSheet.Cells(i, 1).Value) ' 注意:这里交换了两列Next ixlBook.Close FalsexlApp.QuitApplication.ScreenUpdating = TrueMsgBox ”已恢复真实信息!”End Sub' ===== 替换核心函数 =====Sub BatchReplace(FindText As String, ReplaceWith As String)With ActiveDocument.Content.Find.ClearFormatting.Text = FindText.Replacement.Text = ReplaceWith.Forward = True.Wrap = wdFindContinue.Format = False.MatchCase = False.MatchWholeWord = False.MatchWildcards = False.Execute Replace:=wdReplaceAllEnd WithEnd Sub
⚠️ 重要:代码中有两处
"D:\映射表.xlsx",都要改成你实际的映射表路径。
参考截图
Step 3:添加自定义按钮
Word → 文件 → 选项 → 快速访问工具栏 「从下列位置选择命令」下拉选择 → 宏 找到 Normal.NewMacros.正向脱敏_发送给AI → 点「添加」 找到 Normal.NewMacros.反向恢复_从AI取回 → 点「添加」 点「确定」
参考截图

Step 4:日常使用流程
这个方案好在哪?
注意事项
写在最后
一起把繁琐扔给工具,把时间留给自己。
夜雨聆风