ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 9408|回复: 17

合并域问题求助(圆满结题,向守柔斑竹致谢)

[复制链接]

TA的精华主题

TA的得分主题

发表于 2005-4-5 12:14 | 显示全部楼层 |阅读模式

邮件合并后,希望日期和编号(说透了是数值)与数据源中的显示相一致。可现在显示的结果是001成了1,2005-4-5成了4/5/2005。请问,怎么用域(开关?)进行控制?

不怎么用2003,上述问题恰巧在用2003时出现。

0CfInMBd.rar (8.05 KB, 下载次数: 170)
[此贴子已经被作者于2005-4-14 8:50:29编辑过]

TA的精华主题

TA的得分主题

发表于 2005-4-6 07:19 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册

办公兄最近好象对WORD有些渐退??,对EXCEL也有些渐退?是不是研究方向改了啊?

第一个问题,是EXCEL中的格式设置不对,作为数据源的EXCEL数据,不能简单地设置格式,如编号的格式,设置为了某一特殊格式,要知道,EXCEL中的格式设置,数据的本身没有改变,改变的只是它的显示外观(屏幕显示和打印),你可以编辑栏中清晰地看到原形,因此,需要以文本形式进入录入,当然如果数据多的话,可以用公式,你可以本论坛中搜索一下,我在最近的一个邮件合并贴子中有回贴.

第二个问题,合并域的日期格式问题,如下:

变形域代码为: { MERGEFIELD "采样日期" \@"YYYY-M-D"}

变形域代码为: { MERGEFIELD "收样日期" \@"YYYY-M-D" }

变形域代码为: { MERGEFIELD "检验日期" \@"YYYY-M-D" }

变形域代码为: { MERGEFIELD "报告日期" \@"YYYY-M-D"}

成品如下附件:

F1LHLWsJ.zip (9.08 KB, 下载次数: 187)

TA的精华主题

TA的得分主题

 楼主| 发表于 2005-4-6 09:59 | 显示全部楼层

感谢守柔老师。

最近准备一个考试,加上工作很忙,所以上网少了点。

研究方向不会变,对WORD,对EXCEL,都没变。惟一的变化,就是对VBA的学习可能要放弃,没多少实用,又需要太多的精力。域是绝对要学的,因为它相对简单,只是学习过程中的问题可能少不了守柔老师的帮助啊。

TA的精华主题

TA的得分主题

 楼主| 发表于 2005-4-12 18:04 | 显示全部楼层

还有一个问题,对于合并过来的域结果1,设置怎样的域开关才能让其显示为001?

打开附件,无法直接看到相应的域开关,有什么办法可以看到吗?

谢谢。

TA的精华主题

TA的得分主题

发表于 2005-4-13 04:24 | 显示全部楼层
以下是引用办公之星在2005-4-12 18:04:00的发言:

还有一个问题,对于合并过来的域结果1,设置怎样的域开关才能让其显示为001?

打开附件,无法直接看到相应的域开关,有什么办法可以看到吗?

谢谢。

这个问题,我在回复贴子中已经说过,在数据源中设置为文本格式,你原来的自定义格式是不行的。(单从域考虑)

如果不修改数据源该列的自定义格式,则可以在该合并域前直接输入"00",就可以了.

TA的精华主题

TA的得分主题

 楼主| 发表于 2005-4-13 09:25 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册

可能是我没表述清楚。要求是,不管原编号是1、2还是3位,显示均要求是3位,相当于EXCEL中的000自定义结果。因为自动运算的需要,EXCEL中还不能保留为文件格式。

这个要求能否满足?

TA的精华主题

TA的得分主题

发表于 2005-4-13 09:36 | 显示全部楼层

在EXCEL中插入一个辅助列,如B列

输入公式:B2=IF(A2="","",IF(A2<10,"00"&A2,IF(A2<100,"0"&A2,A2)))

在WORD合并域中,引用该编号域。

这样做,要比WORD中方便得多,也更容易理解。

TA的精华主题

TA的得分主题

 楼主| 发表于 2005-4-13 15:59 | 显示全部楼层

这个办法也想过。

我先凑合用,看能不能找到更好的办法。

谢谢斑竹!

TA的精华主题

TA的得分主题

发表于 2005-4-14 02:47 | 显示全部楼层

如果非得用WORD,其实也是可以的,但不知办公兄能否理解:

变形域代码为: { quote { if { MERGEFIELD 编号 } < 10 00 { if { MERGEFIELD 编号 } < 100 0 "" } } }{ MERGEFIELD 编号 }

上述域代码分为二个域,一个是quote 域,一个是原来的编号合并域(与你原来的相同),在quote域中,分三种情况,两个if 域,也就是如果编号合并域的结果<10,则插入00,如果是<100,则插入0,如果是>=100,则不插入.(插入"")

其它的,我不多说了,你自己消化吧.

TA的精华主题

TA的得分主题

 楼主| 发表于 2005-4-14 08:50 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助

守柔老师能如此耐心,真是令人感动。

现在终于明白,域跟EXCEL的公式是两亲家了。上述复合域,写起来可能累一点,但看起来非常轻松。

谢谢。

您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-9-21 15:36 , Processed in 0.035634 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表