




已阅读5页,还剩101页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第二章WordVBA常用对象与应用案例 1 对象的概念和对象变量的定义 对象的概念对象 object 是一些相关的变量和方法的集合 OfficeVBA是一种面向对象的编程语言 对象是VBA的结构基础 VBA应用程序就是由许多对象组成 在Office中 VBA对象可分为集合对象和独立对象两种 独立对象代表一个Office中的一个元素 如Word中的一个文档 一个段落 一个书签或单独的字符 集合也是一个对象 该对象包含多个其他对象 通常这些对象属于相同的类型 例如 在Word中 一个Documents集合对象中可包含文档中的所有Document对象 修改与对象相关的方法或属性就可以定制对象 也可修改整个的对象集合 在VBA中 有一个变量的数据类型是Object 即对象型变量 使用对象变量代替一个对象是指 不直接引用该对象 而使用对象变量访问其代表的对象 2 对象的概念和对象变量的定义 例如 一段程序同时处理三个打开的Word文档 从一个文档中将一些文本复制到另外两个文档中去 如果仅仅打开了这三个文档 就可以分别引用 如写成Documents 1 Documents 2 Documents 3 因为这些文档在Documents集合中占有前三个位置 然而 如果程序改变了文档的顺序 关闭一个或多个文档 或者生成一个和多个新的文档 情况立刻就会变得混乱起来 但是如果使用了对象变量 例如 命名为Words1 Words2 Words3 去引用这些文档 情况就简单得多 这是因为不论在Documents集合中哪个文档处在第一的位置 总可以用对象变量Wordsl 3进行引用 并了解将要使用的文档 3 对象的概念和对象变量的定义 对象变量的定义DimMyObject1AsObjectSetobjectvariable expression nothing例如 下面的语句声明MyObject1变量 并赋值为Excel的当前工作簿 DimexObject1AsObjectSetexObject1 ActiveDocument而下面的语句使用Nothing关键字 则释放exObject1对象变量占用的内存空间 SetexObject1 Nothing 4 Word中的常用对象 Word中常用的对象有 Application对象 Document对象 Range对象 Selection对象 Paragraph对象 Sentences对象 Words对象 Characters对象 Find与Replacement对象 Table 包括Column Row和Cell 对象等 其中 Application对象是Word中最高级别的对象 它就是Word应用程序本身 5 Word中的常用对象 Application对象用户启动一个Word时的同时 也创建了一个Application对象 Application对象位于对象模型的最高级 它代表整个Word应用程序 而且此对象的属性和方法独立于所有文档之外 全部针对的是Word应用程序本身 用户可以使用Application对象的属性或方法来控制或返回应用程序范围内的特性 控制应用程序窗口的外观等 可以使用Application属性来返回WordApplication对象 如 以下的语句表示从视图状态切换到打印预览状态 Application PrintPreview True 6 Word中的常用对象 Subapplication1 WithApplication WindowState wdWindowStateNormal Height 450 Width 600EndWithEndSub 7 Word中的常用对象 8 Word中的常用对象 9 Word中的常用对象 用户可以用以下的代码检查Documents集合的Count属性来确认是否有文档是打开的 Subapplication2 IfDocuments Count 0ThenIfMsgBox 没有文档被打开 vbCr vbCr 你希望创建一个空白文档吗 vbYesNo vbExclamation NoDoccnnentIsOpen vbYesThenDocuments AddElseEndEndIfEndIfEndSub 10 Word中的常用对象 如果对正在使用哪个文档进行操作存在疑问 则应声明一个Document对象变量 并使用这个对象变量来工作 而不是使用ActiveDocument对象来工作 例如 下述语句声明一个Document对象 并将ActiveDocument对象指派给它 所以以后的代码可以针对这Document对象工作 DimmyDocumentAsDocumentSetmyDocument ActiveDocumentWithmyDocument PageSetup RightMargin InchesToPoints 1 右页边距设置为1英寸 72磅 EndWith 11 Word中的常用对象 Application对象应用举例 下面代码显示活动文档的路径和文件名 MsgBoxActiveDocument Path Application PathSeparator ActiveDocument Name 下面代码显示活动文档的名称 如果没有打开的文档 则显示一条消息 IfApplication Documents Count 1ThenMsgBoxActiveDocument NameElseMsgBox 没有文档被打开 EndIf 12 Word中的常用对象 下面代码将所选内容为插入点 然后创建一个区域 包括选定内容的后面五个字符 DimrngTempAsRangeSelection CollapseDirection wdCollapseStartSetrngTemp ActiveDocument Range Start Selection Start End Selection Start 5 下面代码在活动文档的开头插入文本 然后打印该文档 DimrngTempAsRangeSetrngTemp ActiveDocument Range Start 0 End 0 WithrngTemp InsertBefore 公司报告 Font Name Arial Font Size 24 InsertParagraphAfterEndWithActiveDocument PrintOut 13 Word中的常用对象 将插入点移至曾经进行过编辑的下一个位置 Application GoForward 打印活动文档的当前页面 ActiveDocument PrintOutRange wdPrintCurrentPage 打印当前文件夹中的所有文档 adoc Dir DOC Dir函数用于返回所有扩展名为 doc 的文件名 DoWhileadoc Application PrintOutFileName adocadoc Dir Loop 打印活动窗口中文档的前三页 ActiveDocument ActiveWindow PrintOutRange wdPrintFromTo From 1 To 3 14 Word中的常用对象 将Word应用程序窗口调整为7英寸宽 6英寸高 WithApplication WindowState wdWindowStateNormal ResizeWidth InchesToPoints 7 Height InchesToPoints 6 EndWith 退出Word并提示用户保存自上次保存后已修改过的每篇文档 Application QuitSaveChanges wdPromptToSaveChanges 用户保存所有文档 如果用户单击 是 按钮 则在退出Word前 所有的文档都将以Word格式进行保存 DimintResponseAsIntegerintResponse MsgBox 你将希望保存所有文档吗 vbYesNo IfintResponse vbYesThenApplication Quit SaveChanges wdSaveChanges OriginalFormat wdWordDocument 15 Word中的常用对象 Documents Document对象当用户在Word中打开或创建一个文件的同时 也创建了一个Document对象 用户可以使用Document对象或Documents集合的属性或方法来打开 创建 保存 激活或者关闭文件 16 17 Word中的常用对象 18 Word中的常用对象 19 Word中的常用对象 显示Documents集合的第一篇文档的名字 SubDocumentItem IfDocuments Count 1ThenMsgBoxDocuments Item 1 NameEndIfEndSub 以只读方式打开文档MyDoc doc SubOpenDoc Documents OpenFileName C MyFiles MyDoc doc ReadOnly TrueEndSub 如果活动文档在上次保存后进行了修改 则保存活动文档 IfActiveDocument Saved FalseThenActiveDocument Save 20 Word中的常用对象 保存Documents集合中的每一文档 但在保存文档前不提示用户 Documents SaveNoPrompt True OriginalFormat wdOriginalDocumentFormat 5 以下代码根据Normal模板新建一篇文档 然后显示 另存为 对话框 Documents Add Save 以下代码将对上次保存后的文档进行修改和保存 DimdocLoopAsDocumentForEachdocLoopInDocumentsIfdocLoop Saved FalseThendocLoop SaveNextdocLoop 21 Word中的常用对象 以下代码先将文档的左右边距设置为0 5英寸 然后打印所有打开的文档 DimdocLoopAsDocumentForEachdocLoopInDocumentsWithdocLoop PageSetup LeftMargin InchesToPoints 0 5 PageSetup RightMargin InchesToPoints 0 5 PrintOutEndWithNextdocLoop 以下代码表示以只读方式打开文档Doc docDocuments OpenFileName C Files Doc doc ReadOnly True 22 Word中的常用对象 SelectionSelection对象代表窗口或窗格中的当前所选内容 若文档中没有所选内容 则代表插入点 每个文档窗格只能有一个活动的Selection对象 并且整个应用程序中只能有一个活动的Selection对象 与Range对象不同的是 Selection对象代表的选定内容既可以是文档中的一个区域也可以仅仅是一个插入点 23 24 25 26 Word中的常用对象 将第一个窗口的所选内容复制到下一个窗口IfWindows Count 2ThenWindows 1 Selection CopyWindows 1 Next ActivateSelection PasteEndIf本例也可使用下面的语句 ActiveDocument ActiveWindow Panes 1 Selection CopyActiveDocument ActiveWindow Panes 2 Selection Paste 下面代码表示如果插入点不在表格中 则将所选内容插入点移至下一张表格 IfSelection Information wdWithInTable FalseThenSelection GoToNextWhat wdGoToTableEndIf 27 Word中的常用对象 在活动文档开头插入一个数学表达式 计算该表达式 并将计算结果插入该区域 其结果为 1 1 2 SetmyRange ActiveDocument Range 0 0 myRange InsertBefore 1 1 myRange InsertAfter myRange Calculate 计算选定的数学表达式并显示其结果 MsgBox Andtheansweris Selection Calculate 从活动文档中删除所有文字和段落格式设置 SubClrFmtg ActiveDocument Select Selection ClearFormattingEndSub 28 Word中的常用对象 从活动文档的第二至第四段删除所有文字和段落的格式设置 SubClrFmtg2 ActiveDocument Range Start ActiveDocument Paragraphs 2 Range Start End ActiveDocument Paragraphs 4 Range End Select Selection ClearFormattingEndSubIfSelection Type wdSelectionNormalThenSelection Copy Documents Add Content PasteEndIf 将活动文档的内容复制为图片 并将其作为图片粘贴到文档的结尾 SubCopyPasteAsPicture ActiveDocument Content SelectWithSelection CopyAsPicture CollapseDirection wdCollapseEnd PasteSpecialDataType wdPasteMetafilePictureEndWithEndSub 29 Word中的常用对象 将活动文档第一段的格式复制到第二段 ActiveDocument Paragraphs 1 Range SelectSelection CopyFormatActiveDocument Paragraphs 2 Range SelectSelection PasteFormat 剪切第一个段落的第一个单词 并将该单词粘贴到该段落的末尾 WithActiveDocument Paragraphs 1 Range Words 1 Cut CollapseDirection wdCollapseEnd MoveUnit wdCharacter Count 1 PasteEndWith 30 Word中的常用对象 剪切所选内容 并粘贴到新文档中 IfSelection Type wdSelectionNormalThenSelection CutDocuments Add Content PasteEndIf 选择并删除活动文档中的内容 SubDeleteSelection DimintResponseAsIntegerintResponse MsgBox Areyousureyouwantto deletethecontentsofthedocument vbYesNo IfintResponse vbYesThenActiveDocument Content SelectSelection DeleteEndIfEndSub 31 Word中的常用对象 将所选内容在表格中向前移动三个单元格 IfSelection Information wdWithInTable TrueThenSelection MoveUnit wdCell Count 3EndIf 以下代码将当前所选内容的文本赋值给变量strTemp 如果该变量是一个段落标记 则删除其最后一个字符 DimstrTempasStringstrTemp Selection TextIfRight strTemp 1 vbCrThenstrTemp Left strTemp Len strTemp 1 以下代码 Dear 替换活动文档的第一个词 SetmyRange ActiveDocument Words 1 myRange Text Dear 32 Word中的常用对象 新文档中插入10行文字 Documents AddFori 1To10Selection Text Line Str i Chr 13 Selection MoveDownUnit wdParagraph Count 1Nexti 用 Goodbye 替换活动文档中的 Hello SetmyRange ActiveDocument ContentWithmyRange Find ClearFormatting Replacement ClearFormatting Text Hello Replacement Text Goodbye ExecuteReplace wdReplaceAllEndWith 33 Word中的常用对象 批量设置文档中图片的格式 Sub批量设置图片格式 DimI CountAsIntegerCount ActiveDocument InlineShapes Count 计算当前文档中的图片总数ForI 1ToCountWithActiveDocument InlineShapes I PictureFormat 当前文档中的每一个图片格式 Brightness 0 5 设置图片亮度 Contrast 0 5 设置对比度 CropBottom 10 底部剪切10磅EndWithNextEndSub 34 Word中的常用对象 例5 1 百马百担问题 有100匹马 驮100担货 大马驮3担 中马驮2担 两匹小马驮1担 问有大 中 小马各有多少 运行结果如图5 1所示 35 Word中的常用对象 Sub百马百担 DimdmAsInteger zmAsInteger xmAsInteger dm zm xm分别表示大马数 中马数 小马数Selection EndKeyunit wdStorySelection TypeTextText 大 中 小马可能的数目为 Selection TypeParagraph 换行Fordm 1To33Forzm 1To50 xm 100 dm zmIf3 dm 2 zm 0 5 xm 100Thenms 大马 dm 匹 中马 zm 匹 小马 xm 匹 Selection TypeTextText msSelection TypeParagraph 换行EndIfNextNextEndSub 36 Word中的常用对象 Paragraphs Paragraph对象Paragraph对象代表选定内容 范围或文档内的一个段落 Paragraph对象为Paragraphs集合的一个成员 Paragraphs集合包含了所选内容 范围或文档中的所有段落 用户可用Paragraphs index 来表示一个Paragraph对象 其中index为索引号 例如 以下代码将活动文档的第一段右对齐 ActiveDocument Paragraphs 1 Alignment wdAlignParagraphRight 37 38 39 Word中的常用对象 Paragraphs Paragraph对象应用举例 用Add InsertParagraph InsertParagraphAfter或InsertParagraphBefore方法在所选内容的第一段前添加一个段落标记 Selection Paragraphs 1 Range InsertParagraphBefore 以下代码将所选内容的段落格式设为右对齐 双倍行距 WithSelection Paragraphs Alignment wdAlignParagraphRight LineSpacingRule wdLineSpaceDoubleEndWith 40 Word中的常用对象 清除第一段的段前距离ActiveDocument Paragraphs 1 CloseUp 本示例缩减段落或段落中选定内容之前或之后的间距 每运行一次该步骤 缩减6磅 如果段前或段后的间距都是零 则本步骤无效 SubDecreaseParaSpacing Selection Paragraphs DecreaseSpacingEndSub 将活动文档的第一段缩进10个字符 ActiveDocument Paragraphs 1 IndentCharWidth10 将活动文档第一段的首行缩进10个字符 WithActiveDocument Paragraphs 1 IndentFirstLineCharWidth10EndWith 41 Word中的常用对象 更改当前文档第二段的格式 以在该段前设置12磅的段前间距 ActiveDocument Paragraphs 2 OpenUp 也可使用ActiveDocument Paragraphs 1 SpaceBefore 12 将活动文档中的所有段落的缩进量增加两个级别 再将第一段的缩进量删除一个级别 WithActiveDocument Paragraphs Indent IndentEndWithActiveDocument Paragraphs 1 Outdent 42 Word中的常用对象 将活动文档段落3的标题样式降级 ActiveDocument Paragraphs 3 OutlineDemote 将活动窗口切换至大纲视图 并提升活动文档中第一段的样式级别 ActiveDocument ActiveWindow View Type wdOutlineViewActiveDocument Paragraphs 1 OutlinePromote 将活动文档中首段的行距更改为单倍行距 ActiveDocument Paragraphs 1 Space1 或使用ActiveDocument Paragraphs 1 LineSpacingRule wdLineSpaceSingle 43 Word中的常用对象 Sentences Words和Characters集合SentencesSentence代表了选定部分 区域或文档中的所有句子 例如 显示选定部分的句数 MsgBoxSelection Sentences Count sentencesareselected 用Sentences index 返回一个表示单句的Range对象 其中index为索引序号 索引序号代表该句在Sentences集合中的位置 将当前文档的首句设置格式 WithActiveDocument Sentences 1 Bold True 粗体 Font Size 24 设置大小EndWith 44 Word中的常用对象 Sentences集合没有Add方法 而是用InsertAfter或InsertBefore方法向Range对象中添加句子 以下代码可在活动文档首段之后插入一句 WithActiveDocumentMsgBox Sentences Count sentences Paragraphs 1 Range InsertParagraphAfter Paragraphs 2 Range InsertBefore 这是一座蓝色的房子 MsgBox 共有 Sentences Count 句 EndWith 45 Word中的常用对象 Words集合Words为所选内容 区域或文档中的单词组成的集合 Words集合中的每一项均为代表一个单词的Range对象 使用Words index 可以代表一个单词 其中index为索引序号 表示单词在Words集合中的位置 例如 以下代码显示当前选定的单词数 MsgBoxSelection Words Count wordsareselected 以下代码将所选内容中第一个单词的格式设为24磅加倾斜 WithSelection Words 1 Italic True Font Size 24EndWith 46 Word中的常用对象 以下代码选定活动文档中的第一个单词 及单词后的空格 ActiveDocument Words 1 Select说明 如果所选内容为插入点 且后面紧跟一个空格 则Selection Words 1 指所选内容前面的单词 如果所选的为插入点且后面紧跟一个字符 则Selection Words 1 指所选内容后面的单词 使用InsertAfter方法或InsertBefore方法可将文本添至Range象 下列示例在活动文档的第一个单词后面插入文本 ActiveDocument Range Words 1 InsertAfter 新单词 47 Word中的常用对象 Characters集合由选定内容 区域或文档中的字符所组成的集合 Characters集合中的每个元素都是代表一个字符的Range对象 而不是字符对象 用Characters index 可代表一个Range对象 表示一个字符 其中index是索引序号 该索引序号指出了字符在Characters集中的位置 例如 以下代码显示选定部分的字符数 MsgBoxSelection Characters Count charactersareselected 以下代码将选定内容的首字符设置为24磅的加粗格式 WithSelection Characters 1 Bold True Font Size 24EndWith 48 Word中的常用对象 以下代码可以在活动文档的首段之后插入一个新段落 WithActiveDocument Paragraphs 1 Range InsertParagraphAfter Paragraphs 2 Range InsertBefore 新文本 EndWith 49 Word中的常用对象 Sections Section对象Section对象代表选定内容 范围或文档中的某一节 Section对象为Sections集合的一个成员 Sections集合包含了选定内容 范围或文档中的所有节 常用Sections index 的形式代表单独的Section对象 其中index为索引号 例如 以下代码可以修改活动文档第一节的左 右页边距 WithActiveDocument Sections 1 PageSetup LeftMargin InchesToPoints 0 5 RightMargin InchesToPoints 0 5 EndWith 50 Word中的常用对象 可用Add方法或InsertBreak方法在文档中添加新的节 以下代码用于在活动文档的开头添加一节 SetmyRange ActiveDocument Range Start 0 End 0 ActiveDocument Sections AddRange myRangemyRange InsertParagraphAfter 以下代码用于在选定内容的第一段之前添加一分节符 Selection Paragraphs 1 Range InsertBreakType wdSectionBreakContinuous 以下代码在活动文档最后一节的结尾插入文字 WithActiveDocument Sections Last Range CollapseDirection wdCollapseEnd InsertAfter endofdocument EndWith 51 Word中的常用对象 以下代码显示活动文档中节的数目 在选定内容的第一段之前插入分节符 并再次显示节的数目 MsgBoxActiveDocument Sections Count sections Selection Paragraphs 1 Range InsertBreak Type wdSectionBreakContinuousMsgBoxActiveDocument Sections Count sections 52 53 Word中的常用对象 Range对象代表文档中的一个连续范围 每一个Range对象由一起始 start 和一终止 End 字符位置定义 文档的起始位置为0 例如创建一个由指定文档的前两段组成的区域 该区域的起始点在第一段的起始处 它的结束点在第二段的结束处 段落标记之后 Range对象Range方法的语法为 expression Range Start End 说明 该表达式返回一个Document文本对象 其中 expression 对象达式 是必须的 参数Start和End 分别表示Range对象的起止位置 54 Word中的常用对象 Range对象使用举例 以下代码显示活动文档前10个字符 并在开始处插入文字 DimmyRangeAsRangeSetmyRange ActiveDocument Range Start 0 End 10 MsgBoxmyRangemyRange InsertBefore Hello 类似于书签 在活动文档的开头插入文字 55 Word中的常用对象 将活动文档中的第二个段落内容居中 ActiveDocument Paragraphs 2 Range SelectSelection ParagraphFormat Alignment wdAlignParagraphCenter 将前10字符格式设置为粗体 ActiveDocument Range Start 0 End 10 Bold True 下列代码创建一个Range对象 该对象从第二段开头开始 至第五段末尾后结束 SubNewRange DimdocAsDocument rngDocAsRangeSetdoc ActiveDocumentSetrngDoc doc Range Start doc Paragraphs 2 Range Start End doc Paragraphs 5 Range End 或直接使用SetrngDoc ActiveDocument Range Start ActiveDocument Paragraphs 2 Range Start End ActiveDocument Paragraphs 5 Range End EndSub 56 Word中的常用对象 以下程序可以用于判断选定位置是否为插入点 Sub判断选定是否为插入点 DimR1AsRangeSetR1 ActiveDocument Range R1 Select 判断当前Selection对象是否为一个插入点IfSelection Type wdSelectionIPThenMsgBox 选中对象为一个插入点 ElseMsgBox 选中对象不是一个插入点 EndIfEndSub 57 Word中的常用对象 例5 2 复制一文章中的每一句到该句的句头 用红色斜体表示 界面设计如图5 2所示 设计步骤如下 启动Word程序 新建一个空白文档 在文档中输入如图5 3所示的文字段落 打开 控件工具箱 工具栏 在Word文档中添加两个命令按钮CommandButton1 2 然后将两个命令按钮的Caption属性分别设置为 复制句子 和 清除添加 双击任何一个命令按钮 进入VBE编辑器 分别编写命令按钮的Click事件代码 58 Word中的常用对象 PrivateSubCommandButton1 Click 复制句子 按钮DimteAsWord RangeWithActiveDocumentForI Sentences Count 1To1Step 1Sette Range Sentences I Start Sentences I End Sette Sentences I 也可以这样表示te Selectte CopySelection MoveLeftSelection Paste Sentences I Font Color wdColorRed Sentences I Font Italic TrueNextEndWithEndSub 59 Word中的常用对象 PrivateSubCommandButton2 Click 清除添加 按钮 清除刚才复制出来的内容DimteAsWord RangeWithActiveDocumentForI Sentences Count 2To0Step 2Sette Sentences I te DeleteNextEndWithEndSub 关闭VBE窗口 单击 控件工具箱 工具栏中的 退出设计模式 按钮 再单击 复制句子 可复制文本 60 Word中的常用对象 例5 3 文本倒置 实现文本倒置的程序代码如下 Sub文本倒置 DimteAsWord RangeWithActiveDocumentForI 0To Characters Count 1Settr Characters I 1 Sette Characters Characters Count I te Select te Copy tr SelectSelection MoveLeft Selection PasteNextEndWithEndSub 61 Word中的常用对象 例5 4 删除空白段落 Sub删除空白段落 DimiAsParagraph nAsLongForEachiInActiveDocument ParagraphsIfLen i Range 1Then 判断段落长度是否为1i Range Delete 删除此段n n 1EndIfMsgBox 共删除段落 n 个 NextEndSub 62 Word中的常用对象 Tables Table集合与对象Tables集合由Table对象组成 这些对象代表选定内容 范围或文档中的表格 可使用Tables index 表示一个Table对象 其中index为索引号 索引号代表选定内容 范围或文档中表格的位置 例如 下面语句将活动文档中的第一个表格转换为文本 ActiveDocument Tables 1 ConvertToTextSeparator wdSeparateByTabs表5 11列举了Tables Table对象的部分属性和方法 63 64 Word中的常用对象 65 Word中的常用对象 将某一边框应用于活动文档中的每一表格 ForEachaTableInActiveDocument TablesaTable Borders OutsideLineStyle wdLineStyleSingleaTable Borders OutsideLineWidth wdLineWidth025ptaTable Borders InsideLineStyle wdLineStyleNoneNextaTable 66 Word中的常用对象 在活动文档的起始处添加一3 4表格 SetmyRange ActiveDocument Range Start 0 End 0 ActiveDocument Tables AddRange myRange NumRows 3 NumColumns 4 为活动文档的第一个表格的第一个单元格设置变量 将单元格的宽度改为36磅 并删除表格的边框 SetmyRange ActiveDocument Tables 1 Cell 1 1 WithmyRange SetWidthColumnWidth 36 RulerStyle wdAdjustNone Parent Borders Enable FalseEndWith 67 Word中的常用对象 向表格单元格插入文字 下面的代码向活动文档的第一个表格的第一个单元格插入文字 Cell方法返回单个的Cell对象 Range属性返回一个Range对象 Delete方法用来删除现有的文字 而InsertAfter方法用来插入 Cell1 1 文字 IfActiveDocument Tables Count 1ThenWithActiveDocument Tables 1 Cell Row 1 Column 1 Range Delete InsertAfterText Cell1 1 EndWithEndIf 68 Word中的常用对象 显示文档第一张表格第一行中每个单元格中的内容 SetoTable ActiveDocument Tables 1 ForEachaCellInoTable Rows 1 CellsSetmyRange ActiveDocument Range Start aCell Range Start End aCell Range End 1 MsgBoxmyRange TextNextSetoTable ActiveDocument Tables 1 ForEachaCellInoTable Rows 1 CellsSetmyRange aCell RangemyRange MoveEndUnit wdCharacter Count 1MsgBoxmyRanNext 69 Word中的常用对象 在活动文档的开头插入以制表符分隔的文本 然后将这些文本转换为一张表格 SetoRange1 ActiveDocument Range Start 0 End 0 oRange1 InsertBefore one vbTab two vbTab three vbCrSetoTable1 oRange1 ConvertToTable Separator Chr 9 NumRows 1 NumColumns 3 将活动文档中的所有表格复制到一篇新文档 IfActiveDocument Tables Count 1ThenSetoDoc1 ActiveDocumentSetMyRange Documents Add Range Start 0 End 0 ForEachoTableInoDoc1 TablesoTable Range CopyWithMyRange Paste CollapseDirection wdCollapseEnd InsertParagraphAfter CollapseDirection wdCollapseEndEndWithNextEndIf 70 Word中的常用对象 下面的代码为所选内容的第一张表格第一行应用底纹 IfSelection Tables Count 1ThenSelection Tables 1 Rows 1 Shading Texture wdTexture10PercentElseMsgBox 选择区没有表格 EndIf 71 Word中的常用对象 下面的代码用于选定表格单元格的文本 选择单元格里的文本 也可以这样 SubTsample DimstrAsStringstr ActiveDocument Tables 1 Cell 2 2 Range Textstr Left str Len str 1 MsgBoxstrEndSub或使用Range对象的Select方法 选择指定的单元格文本 SubTsample 图5 3显示指定表格的单元格数据WithActiveDocument Tables 1 Cell 1 1 ActiveDocument Range Range Start Range End 1 Select 选定第一个单元格中的文本EndWithEndSub 72 Word中的常用对象 例5 6 用窗体显示文档中指定表格的单元格数据 运行结果如图5 3所示 PrivateSubCm取消 Click DimreAsIntegerre MsgBox 是否要关闭对话框 vbOKCancel 关闭对话框警告 Ifre vbOKThenUnloadMeEndIfEndSubPrivateSubCm重置 Click Tb行序号 Value 1Tb列序号 Value 1Sb行序号 Max ActiveDocument Tables Sb表序号 Value Rows CountSb行序号 Min 1Sb列序号 Max ActiveDocument Tables Sb表序号 Value Columns CountSb列序号 Min 1EndSub 73 Word中的常用对象 PrivateSubCm显示单元格值 Click DimiAsInteger jAsInteger kAsIntegeri Val Tb表序号 Value j Val Tb行序号 Value k Val Tb列序号 Value Tb单元格值 Text Left ActiveDocument Tables i Cell j k Range Text Len ActiveDocument Tables i Cell j k Range Text 2 单元格的文本包含2个长度的换行符EndSubPrivateSubSb表序号 Change Tb表序号 Value Sb表序号 ValueTb行序号 Value 1Tb列序号 Value 1Sb行序号 Max ActiveDocument Tables Sb表序号 Value Rows CountSb行序号 Min 1Sb列序号 Max ActiveDocument Tables Sb表序号 Value Columns CountSb列序号 Min 1EndSub 74 Word中的常用对象 PrivateSubSb列序号 Change Tb列序号 Value Sb列序号 ValueEndSubPrivateSubSb行序号 Change Tb行序号 Value Sb行序号 ValueEndSubPrivateSubUserForm Initialize IfActiveDocument Tables Count 1Then 判断文档中是否有表格Tb表序号 Value 1 Tb行序号 Value 1Tb列序号 Value 1 Sb表序号 Max ActiveDocument Tables CountSb表序号 Min 1 Sb行序号 Max ActiveDocument Tables 1 Rows CountSb行序号 Min 1 Sb列序号 Max ActiveDocument Tables 1 Columns CountSb列序号 Min 1Else 文档中无表格Cm取消 Default True Cm确定 Enabled False Cm显示 Enabled FalseTb表序号 Value 0 Tb行序号 Value 0Tb列序号 Value 0 Sb表序号 Max 0Sb表序号 Min 0 Sb行序号 Max 0Sb行序号 Min 0 Sb列序号 Max 0Sb列序号 Min 0EndIfEndSub 75 Word中的常用对象 Find对象Find对象代表查找操作的执行条件 用于查找文档中特定范围的文字 表5 12列举了Find对象的部分属性和方法 76 77 Word中的常用对象 查找和选定下一个出现的 hi WithS
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 咨询服务协议书样本
- 解析卷-北师大版8年级数学上册期中试题及参考答案详解(B卷)
- 2025版电子信息设备融资租赁委托合同样本
- 2025年度国内高端柴油批发与物流配送合作合同
- 2025版城镇化改造土方工程劳务分包合同范本
- 2025版住宅小区改造工程委托施工合同
- 2025版企业间融资租赁借款合同汇编
- 2025年度智能停车场设备安装与租赁合同样本
- 2025年度城市公共交通系统采购框架合同
- 2025年度典当借款与艺术品市场风险管理服务协议
- 水电清包工合同(3篇)
- 连铸坯质量控制与缺陷控制课件
- 《ACT就这么简单》课件
- 农机行政处罚流程图
- 沥青混合料低温弯曲试验2002363
- 盘阀结构和原理课件
- 《普通逻辑》全册课后练习题参考答案(含原题)
- 环境、环境问题与环境科学
- 新版(七步法案例)PFMEA
- 会计师事务所7(报告流转签发制度12)
- 高二年级开学学生大会年级主任的讲话[001]
评论
0/150
提交评论