- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Word VBA 学习交流资料之三
Word VBA 学习交流资料之三
感 想:有感于国人的Word水平比较低,尤其是VBA这一块,本人想请大家一起学习VBA,在提高自身的能力同时帮助需要帮助的人。
感谢:绿叶的建群之功,也感谢you兄、八爪鱼兄的热烈支持,更感谢大家的大力支持!
学前必备:Word VBA帮助(2003或别的都行,大体相当)(没有也没有关系,在这里,大多看到的就是复制自“帮助”的。)
可选工具:金山词霸(对E文不太懂的人,尤其重要)
语法工具:共享区的VBS(感谢七兄)
学习方法:“不求甚解”(一开始,不太懂,没关系,坚持下去就懂了。)
学习步骤:看到例子时,复制到VBE编辑器中运行一次,看一下结果(最好按F8,一步一步地看)
必要指出:是“互学”,错误或不妥之处难免!因鄙人也是一边看帮助,一边写。
开始之前:高唱国歌(最好能喊:自强不息!)
―――――――――――――――
Start:
将 Range 对象赋给变量
有多种方法将现有的 Range 对象赋给变量。本主题对两种不同的方法进行了阐述。在下列示例中,将 Range 对象赋给变量 Range1 和 Range2。例如,下列指令将活动文档中的第一个和第二个单词赋给变量 Range1 和 Range2。Set Range1 = ActiveDocument.Words(1)
Set Range2 = ActiveDocument.Words(2)
注意:
Words对象是Range对象,它不存在Word对象,你可以这样命名:dim word1 as range,,但是dim word1 as word是不行的,也是错的。
Words直观的说就是单词,那么,什么是单词呢?中文中没有单词的概念啊!可以这样来理解,英文的单词是以空格分隔的,所以单词就是二个空格之间的字母加空格。(实验证明,确实是这样的)不过,这与我们的关系不大(因为我们大多处理的是中文)。那么中文的“Word”是怎么回事呢?是词组?还是每个汉字呢?其实我也不知道,我是这样来做的,在VBA中输入如下的程序:
Sub 中文Word()
Dim range1 As Range
Set range1 = ActiveDocument.Words(1)
range1.select
MsgBox range1
End Sub
再新建一个Word,输入这样的的汉字“[ a 彼岸赋好 彼岸变量”(不包括红色的双引号),按F8分别测试Words(1)、Words(2)、Words(3)、Words(4)、Words(5)、Words(6)等,发现什么没有。我发现了如下的规律:①标点符号在中文中算是一个Word单位;②字母或者单词后面的空格不算一个Word单位,再英文如果没有结标记则包括后面的空格(例如:a the as.,则第一个是a ,(注意后面有空格),当然最后的.不包括在前一个as内。所以,以上总共有4个Words,你可以用这个来测试。ActiveDocument.Words(1).Select,ActiveDocument.Words.count)(如下图)所以我想,有的一个是汉字,有的二个是汉字,他“可能”是根据微软的输入法中的词组定义相一致的。⑤当然,你也可以看看Words集合来看一下这个对象。当然,可能没我说的简单、易懂。当然words对象的不确定性,决定了他使用的频率。如果你看懂我的上面所说,对于words对象基本就OK了。
注意range对象的赋值就是这样set a=b ,变量的赋值就是a=1,但对象就必须这样赋值!(包括任意的对象,Set是对对象赋值的标准语句)
将一个 Range 对象变量设置为等于另一个 Range 对象变量下列指令将名为 Range2 的区域变量设为与 Range1 代表的位置相同。
Set Range2 = Range1与 Range1 代表的位置相同现在两个变量代表同一区域。修改 Range2 的起点、终点或其中的文本将影响 Range1,反之亦然。请注意,以下指令等价于 Range2.Text = Range1.Text。该指令指定 Range2 的默认属性(Text 属性)为 Range1 的默认属性。但该指令并不修改其实际引用的对象。
Range2 = Range1Range2 和 Range1 区域具有相同的内容,但它们可能对应文档中的不同位置,甚至对应不同的文档。Dim range1 As Range, range2 As Range
Set range1 = ActiveDocument.Range(0, 1) 文档的第一个区域(字)
Set range2 = ActiveDocument.Range(1, 2) 文档的第二个区域(字)
您可能关注的文档
- NPS 招式.doc
- NPS 招式---流线化生产.doc
- NPS招式--流线化生产.doc
- O7升级7004到官方7720全过程文字版,含中文越狱,修bug,全程2小时.doc
- n房地产经济第二章.ppt
- Oibcyy21世纪初机械制造业发展的特点和趋势.doc
- obama就职演说文言版.doc
- office2003使用da全.ppt
- onespace_2008安装说明书(图文并茂).doc
- ORACLE EBS FORM二次开发整理.doc
- TZSM-校史馆展览展示工程服务规范及编制说明.pdf
- TSEEPLA-生态环境标准实施评估指南及编制说明.pdf
- 化妆品中羟吡啶酮的测定 高效液相色谱法编制说明.pdf
- QJKL023-2020 佳木斯市恺乐农药有限公司企业标准240gpL乳氟禾草灵乳油.pdf
- QHTY031-2020 过氧化氢分解仪.pdf
- TGLAC-基于北斗的智能网联车载设备技术要求及编制说明.pdf
- QALKS0001-2020 新能源车用机械式变速器总成台架试验标准.pdf
- TSSM-基于计量方法学的碳排放核算指南 铝冶炼企业及编制说明.pdf
- 产品碳足迹评价规范 污泥干化焚烧系统集成装备及编制说明.pdf
- DBS333018-2024 食品安全地方标准 藕粉生产卫生规范.pdf
文档评论(0)