在EXCEL中用VBA创建WORD文档表格.doc_第1页
在EXCEL中用VBA创建WORD文档表格.doc_第2页
在EXCEL中用VBA创建WORD文档表格.doc_第3页
在EXCEL中用VBA创建WORD文档表格.doc_第4页
在EXCEL中用VBA创建WORD文档表格.doc_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

VBA在EXCEL中操作WORD表格之四 第 8 页 共 8 页在EXCEL中用VBA创建WORD文档表格编辑:madmlwt1在新建WORD空白文档中创建一个表格【要求】新建一个WORD空白文档,在新文档中创建一个4行5列的空白表格,在空白表格的第一个单元格写入“第一单元格”、最后一个单元格中写入“最后一个单元格”。【代码】Sub 创建一个WORD表格()Application.ScreenUpdating = False 关闭屏幕刷新dqT = Timer 程序运行开始时间(秒)dqM = ThisWorkbook.Name 要创建的WORD文件名称(当前工作簿名称)Set wordAppl = CreateObject(Word.Application) 定义一个Word对象变量With wordAppl .Documents.Add 创建一个新的Word文档 .ActiveDocument.tables.Add Range:=.Selection.Range, NumRows:=4, NumColumns:=5 插入45表格 Set myRange = .ActiveDocument.tables(1) 创建表格对象 With myRange .Cell(1, 1).Range.insertAfter 第一个单元格 第一个单元格中写入字符第一个单元格 .Cell(.Rows.Count, .Columns.Count).Range.insertAfter 最后一个单元格 第二个单元格中写入字符最后一个单元格 End With .ActiveDocument.SaveAs ThisWorkbook.Path & & dqM & .doc 保存新建Word文档与当前文件相同路径 .Documents.Close 关闭新建文档 .Quit 关闭新建文档窗口End WithSet wordAppl = Nothing 释放存储空间MsgBox Chr(10) & 成功创建一个WORD表格! _ & Chr(10) & Chr(10) & 共用时 & Timer - dqT & 秒, , Left(dqM, Len(dqM) - 4)Application.ScreenUpdating = False 关闭屏幕刷新End Sub说明:WORD文档中的表格,与EXCEL中的表格概念基本一致,只是表达方式有所区别。tables表示表格对象,tables(1) 表示第1个表格(以此类推)。表中的一个空格也叫单元格,用Cell(行数,列数)表示。表格行/列数计算代码:表格行数wordAppl.ActiveDocument.tables(1) .Rows.Count表格列数wordAppl.ActiveDocument.tables(1) .Columns.Count2新建一个文档写入两个段落再创建一空白表格【要求】第一段落写入“创建一个WORD表格”,字体“黑体”、字号20、对齐“居中”;第二段落写入“作者:老顽童” ,字体“华文行楷 ”、字号16、对齐“居中”。【代码】Sub CommandButton1_Click()Application.ScreenUpdating = False 关闭屏幕刷新dqT = Timer 程序运行开始时间(秒)Set wordAppl = CreateObject(Word.Application) 定义一个Word对象变量With wordAppl .Documents.Add 创建一个新的Word文档 第一段设置 .Selection.Font.Name = 黑体 字体 .Selection.Font.Size = 20 字号 .Selection.Font.Bold = True 加粗 .Selection.TypeText Text:=创建一个WORD表格 第一个段落文本 .Selection.ParagraphFormat.Alignment = 1 居中 第二段设置 .Selection.TypeParagraph 插入新的段落 .Selection.Font.Name = 华文行楷 字体 .Selection.Font.Size = 16 字号 .Selection.Font.Bold = False 不加粗 .Selection.TypeText Text:=作者:老顽童 新段落中写入的文本 .Selection.ParagraphFormat.Alignment = 1 居中 插入表格 .Selection.TypeParagraph 插入新的段落 .Selection.ParagraphFormat.Alignment = 3 左对齐 .ActiveDocument.Tables.Add Range:=.Selection.Range, NumRows:=4, NumColumns:=5 插入45表格 保存与关闭 .ActiveDocument.SaveAs ThisWorkbook.Path & 文字表格.doc 保存新建Word文档与当前文件相同路径 .Documents.Close 关闭新建文档 .Quit 关闭新建文档窗口End WithSet wordAppl = Nothing 释放存储空间MsgBox Chr(10) & 成功创建一个WORD文档! _ & Chr(10) & Chr(10) & 文档第一段写入文本 创建一个WORD表格 _ & Chr(10) & Chr(10) & 文档第二段写入文本 作者:老顽童 _ & Chr(10) & Chr(10) & 创建整个WORD表格文档用时 & Timer - dqT & 秒, , 创建表格信息Application.ScreenUpdating = False 关闭屏幕刷新End Sub段落对齐设置值说明:左对齐0或3,居中1,右对齐2,分散对齐4。3打开一个已经存在的文档创建一个空白表格【要求】在文档“暑假通知书.doc”中第6段落后插入学生个人成绩表(2行12列),第一行写入标题并设置字体及对齐格式;在文档末尾插入一个2行1列表格,第一个单元格写入“意见或建议:”,第二个单元格写入“家长签名:”。在指定段落间创建一个表格【代码1】Private Sub CommandButton1_Click()Application.ScreenUpdating = False 关闭屏幕刷新dqT = Timer 程序运行开始时间(秒)dqM = ThisWorkbook.Path & WORD文档暑假通知书.doc 带路径的WORD文件名称Set wdWORD = CreateObject(Word.Application) 定义一个Word对象变量Set dkDOC = wdWORD.Documents.Open(dqM) 创建文档对象wdWORD.ActiveDocument.Paragraphs(6).Range.InsertParagraphAfter 第6段落后面插入一个新段落wdWORD.ActiveDocument.Paragraphs(7).Range.Select 选中插入的新段落dkDOC.Tables.Add Range:=wdWORD.Selection.Range, NumRows:=2, NumColumns:=12 插入一个2行12列表格Set wdBG = wdWORD.ActiveDocument.Tables(1) 创建表格对象With wdBG 表格第1行写入列标题 .Cell(1, 1) = 姓名 .Cell(1, 2) = 班级 .Cell(1, 3) = 语文 .Cell(1, 4) = 数据 .Cell(1, 5) = 英语 .Cell(1, 6) = 物理 .Cell(1, 7) = 政治 .Cell(1, 8) = 历史 .Cell(1, 9) = 地理 .Cell(1, 10) = 生物 .Cell(1, 11) = 总分 .Cell(1, 12) = 名次 With .Rows(1).Range 表格第一行 .Font.Size = 10 字号 .Font.Name = 宋体 字体 .Font.Bold = True 加粗 .ParagraphFormat.Alignment = 1 居中 End WithEnd WithwdWORD.ActiveDocument.SaveAs 保存修改wdWORD.Quit 关闭新建文档窗口Set dkDOC = Nothing 释放存储空间Set wdWORD = Nothing 释放存储空间MsgBox Chr(10) & 成功创建一个WORD表格! _ & Chr(10) & Chr(10) & 共用时 & Timer - dqT & 秒, , Left(Dir(dqM), Len(Dir(dqM) - 4)Application.ScreenUpdating = False 关闭屏幕刷新End Sub在文档末尾创建一个表格【代码2】Private Sub CommandButton1_Click()Application.ScreenUpdating = False 关闭屏幕刷新dqT = Timer 程序运行开始时间(秒)dqM = ThisWorkbook.Path & WORD文档暑假通知书.doc 带路径的WORD文件名称Set wdWORD = CreateObject(Word.Application) 定义一个Word对象变量Set dkDOC = wdWORD.Documents.Open(dqM) 创建文档对象zDS = dkDOC.Paragraphs.Count 当前文档段落总数wdWORD.ActiveDocument.Paragraphs(zDS).Range.InsertParagraphAfter 第zDS段落后面插入一个新段落wdWORD.ActiveDocument.Paragraphs(zDS + 1).Range.Select 选中插入的新段落dkDOC.Tables.Add Range:=wdWORD.Selection.Range, NumRows:=2, NumColumns:=1 插入一个2行1列表格Set wdBG = wdWORD.ActiveDocument.Tables(1) 创建表格对象With wdBG 表格写入文本 .Cell(1, 1) = 家长意见或建议: .Cell(2, 1) = 家长签名: With .Range 表格 .Font.Bold = True 字型加粗 .Font.Size = 12 字号 .Font.Name = 宋体 字体 .ParagraphFormat.Alignment = 0 左对齐 End WithEnd WithwdWORD.ActiveDocument.SaveAs 保存修改wdWORD.Quit 关闭新建文档窗口Set dkDOC = Nothing 释放存储空间Set wdWORD = Nothing 释放存储空间MsgBox Chr(10) & 成功创建一个WORD表格! _ & Chr(10) & Chr(10) & 共用时 & Timer - dqT & 秒, , Left(Dir(dqM), Len(Dir(dqM) - 4)Application.ScreenUpdating = False 关闭屏幕刷新End Sub说明:计算整个文档的段落总数zDS = dkDOC.Paragraphs.Count 当前文档段落总数计算一个WORD文档的段落总数,以段落标记为准,一个段落标记表示一个段落数。对整个表格设置格式wdWORD.ActiveDocument.Tables(1) .Range ,表示整个表格对象。wdWORD.ActiveDocument.Tables(1) .Range.Font ,表示整个表格对象的文字。wdWORD.ActiveDocument.Tables(1) .Range.ParagraphFormat ,表示整个表格对象文字的对齐方式。在WORD表格中,一个单元格就是一个段落。对单元格中的文字设置对齐方式,就是设置一个段落格式(ParagraphFormat)。小结:在WORD文档中插入表格,关键就是要指明插入表格的位置文档开始位置、指定某个段落之后(或之前)、文档末尾等三种可能。归根结底就是在指定段落前/后(或左/右)插入表格。表示在指定段落左或右插入表格代码:InsertParagraphBefore左或前插入InsertParagraphAfter右或后插入指定某个段落之后插入表格步骤:第一步 插入一个新段落wdWORD.ActiveDocument.Paragraphs(段落数).Range.

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论