、邮件合并(模板套用))
文章目录更新目录复制为表格数据?邮件合并(模板套用)运行宏的方法更新目录方式一点目录中任何位置按f9即可。方式二目录上右键 | 更新域选只更新页码更新整个目录也是可以实现更新的。复制为表格数据?很多时候我们有这样的需求文本或ai生成的内容可以直接复制到表格中。1、excel的数据 # 可以2、其他word的表格 # 整个可以复制几行可能不行3、ai生成的markdown表格 # 直接复制到表格是不行的这里有个技巧既然直接到word有时不行但是到excel大多都可以那么转一道先excel再word兼容性就比较强了。也就是 内容-excel-word。邮件合并(模板套用)1、新建邮件合并.docx输入内容接口名称 请求地址 请求方式2、新建接口列表.xlsx内容为接口名称 请求地址 请求方式 接口1 http://www.baidu.com POST 接口2 http://www.ali.com POST3、邮件 | 开始邮件合并 | 普通word文档(这里根据实际需要进行选择)。注开始邮件合并必须点否则不知道使用什么模板。4、邮件 | 选择收件人 | 使用现有列表选中接口列表.xlsx。5、打开开发工具然后 开发工具 | 点 visual basic | normal上右键 | 插入 | 模块代码如下SubMailMergeSplitSingleDoc()DimmainDocAsDocumentDimnewDocAsDocumentDimrecTotalAsLong,iAsLongDimsaveFolderAsStringDimfileNameAsStringDimtargetFieldAsVariant 修改这里saveFolderD:\word\ 输出文件夹末尾必须带\DimnameFieldAsStringnameField接口名称 当前Excel表头第一列用来当文件名 SetmainDocActiveDocument 判断是否绑定数据源IfmainDoc.MailMerge.DataSourceIsNothingThenMsgBox 错误当前文档未绑定邮件合并数据源,vbCriticalExitSubEndIf校验字段是否存在On ErrorResumeNexttargetFieldmainDoc.MailMerge.DataSource.DataFields(nameField).ValueOn ErrorGoTo0IfIsEmpty(targetField)ThenMsgBox 错误数据源不存在字段【 nameField 】核对Excel表头,vbCriticalExitSubEndIf校验有效数据行数 recTotalmainDoc.MailMerge.DataSource.RecordCountIfrecTotal1ThenMsgBox 错误数据源未读取到有效数据记录数 recTotal 请重新绑定Excel,vbCriticalExitSubEndIfApplication.ScreenUpdatingFalse Application.DisplayAlertswdAlertsNoneFori1TorecTotal mainDoc.MailMerge.DataSource.ActiveRecordiWithmainDoc.MailMerge .DestinationwdSendToNewDocument .SuppressBlankLinesTrue .Execute Pause:FalseEndWithSetnewDocActiveDocument 读取Excel「接口名称」列作为文件名 fileNameTrim(mainDoc.MailMerge.DataSource.DataFields(nameField).Value)清理文件名非法字符 fileNameReplace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(fileName,\, ), /, ), :, ), *, ), ?, ), , ), , ), , ), |, ), , )不存在文件夹则自动创建IfDir(saveFolder,vbDirectory)ThenMkDirsaveFolderEndIfnewDoc.SaveAs2 fileName:saveFolderfileName.docx,FileFormat:wdFormatXMLDocument newDoc.ClosewdDoNotSaveChangesNexti Application.ScreenUpdatingTrue Application.DisplayAlertswdAlertsAll MsgBox 批量拆分完成共生成 recTotal 份接口文档路径saveFolder,vbInformationEndSub按f5即可执行在d:/word下生成接口1、接口2两个文档内容也套用了模板的内容即为成功。运行宏的方法1、f52、点运行图标(向右的绿色小箭头)