word邮件合并 | 您所在的位置:网站首页 › word邮件合并地址域名怎么弄 › word邮件合并 |
在我的电脑上报错了,试了好久 少个引号!我加上去可以了: 不不不,加上去也是错的。 原文不改是对的,换了一个电脑成功了。 我原来的电脑不知道为什么,会报错。 原文 https://mp.weixin.qq.com/s?__biz=MzkyNjMwNjQyOA==&mid=2247485065&idx=1&sn=acc65094b9570c680a34fe66ebad4590&chksm=c2381f9af54f968c0caafb01032e6296bef47c6db2776355736a2adc90cdf6fe1e22ec095f23&mpshare=1&scene=1&srcid=0408NBkKNxXSY7bUKbdMtKdG&sharer_sharetime=1649420601793&sharer_shareid=6640ea4c5969f1872d3c29f3eaf95864#rd 邮件合并-批量生成发货单(多行记录) xx小饼干 Excel技能收藏夹 2022-02-22 00:00 收录于话题 #邮件合并7个 #批量工具13个 #Excel技巧11个 诉求:根据数据源,按照指定模板批量生成发货单 例题:如下数据源为订单列表,其中一个订单号中会有多条商品明细,现需要根据订单号将商品明细填充到如下图Word所设定好的模板中以生成发货单。 由此,我们需要做的是一对多的邮件合并,单条邮件合并可见前文链接: 单条记录的邮件合并 公众号:Excel技能收藏夹邮件合并-VBA批量生成出货单(单条记录) • 订单列表数据源 • 效果图 效果描述一:每个订单号生成一份发货单 效果描述二:一个订单号的多条记录都同时显示在一份发货单中 效果描述三:当商品明细超过模板明细最大行数时将自动换页填写,小于模板明细行数时则显示为空白 • 步骤 Step 1: 准备订单列表 [1.1-1.2] 1.1 在数据源后面插入一列辅助列,在辅助列输入公式=IF(A2=A3,1,0) 公式作用:用来划分订单号的,即,每当辅助列值为0时,就表示是一个订单号与另一个订单号的界线。 1.2 在数据源后面再插入一列辅助列,如下G列,输入公式=COUNTIF(A:A,A2) 公式作用:用来判断同一个订单号下最大的明细行数,以此来初步设word模板中的商品明细行数。 本案例中,计算出最大明细行数为6,则Word模板下的商品明细设置为6行。 当商品明细行数超过模板设置的最大行数时候,将自动转入下一页显示。 Step 2: 准备Word发货单模板 Step 3: 进行邮件合并 [3.1-3.4] 3.1 邮件 > 选择收件人 > 使用现有列表 > 在弹框中找到订单列表数据源 ,点击确定 3.2 邮件 > 插入合并域 :这里模板中的明细先只在第一行插入合并域名 3.3 模板中的明细在第二行时候,进行如下操作(a~h): a. 按Alt+F9 进入域代码编辑状态 b. 光标定位到发货单明细的第二行第一个单元格,按Ctrl+F9,就会看到一对花括号{}。注意,这里的花括号不是手动敲打的! c. 光标定位到花括号{}里面,键入set a "",这里注意是set+空格+a+空格+英文状态下的双引号""。这个set是将辅助列的值设为变量a d. 光标定位到双引号""中,选择邮件选项卡下插入合并域中的“辅助”列字段 e. 光标定位到最外层花括号的最外面,接着,在邮件选项卡下,找到[规则],在[规则]中单击选择[下一条记录条件] 单击[下一条记录条件]后,会出现窗口,如下键入信息后点击确定。 这时候,我们的第2行后面就会出现一串新的代码如下②: 这条代码的作用是用来判断当辅助列的值为1时候,就显示下一条记录。 f. 光标定位到上一步最后的花括号外面,继续键入域代码:按Ctrl+F9,在出现的花括号中输入If a=1+插入合并域字段“商品”+""(如下) 这个if是判断当变量为1,即是同一个订单号时,则显示商品名字,否则显示空值 g. 以上就设置好第二行第一个单元格的域代码,接着,我们在第二行其他单元格中输入域代码示例如下: h. 我们这里设置的模板明细行数为6行,所以,从第3行到第6行,我们只需要将第2行的域代码复制进去即可。 3.4 最后,点击邮件选项卡下 > 完成并合并 > 编辑单个文档 > 全部 > 确定。就搞定啦! 最后,按Alt+F9可以退出域代码编辑状态。 建议做了一次之后,将这个word模板保存,这样,下次遇到类似情况可以稍作改动来套用哦~ 以上,就是今天的小技能,怎么样,学废了吗~~ |
CopyRight 2018-2019 实验室设备网 版权所有 |