在EXCEL中用VBA处理WORD表格常规属性文档格式.docx

上传人:b****7 文档编号:22207466 上传时间:2023-02-03 格式:DOCX 页数:28 大小:22.90KB
下载 相关 举报
在EXCEL中用VBA处理WORD表格常规属性文档格式.docx_第1页
第1页 / 共28页
在EXCEL中用VBA处理WORD表格常规属性文档格式.docx_第2页
第2页 / 共28页
在EXCEL中用VBA处理WORD表格常规属性文档格式.docx_第3页
第3页 / 共28页
在EXCEL中用VBA处理WORD表格常规属性文档格式.docx_第4页
第4页 / 共28页
在EXCEL中用VBA处理WORD表格常规属性文档格式.docx_第5页
第5页 / 共28页
点击查看更多>>
下载资源
资源描述

在EXCEL中用VBA处理WORD表格常规属性文档格式.docx

《在EXCEL中用VBA处理WORD表格常规属性文档格式.docx》由会员分享,可在线阅读,更多相关《在EXCEL中用VBA处理WORD表格常规属性文档格式.docx(28页珍藏版)》请在冰豆网上搜索。

在EXCEL中用VBA处理WORD表格常规属性文档格式.docx

bgS=dkDOC.Tables.Count'

当前文档中的表格总数

dkDOC.Close'

关闭文档

SetdkDOC=Nothing'

释放存储空间

SetwdWORD=Nothing'

MsgBoxChr(10)&

Dir(dqM)&

文档中共有"

&

bgS&

个表格!

"

,"

计算WORD表格个数"

EndSub

提示:

嵌入式表格如WORD文档中插入的EXCEL表格、表格中插入的表格。

计算表格个数的代码格式——文档对象.Tables.Count

上述方法不能计算WORD文档中的嵌入式表格个数。

2.计算WORD文档中各个表格的行/列数

在EXCEL中,遍历WORD文档“成绩表.doc”中的表格,计算表格的行数和列数。

Sub计算指定WORD文档中表格行列数()

Forg=1TobgS'

循环表格

WithdkDOC.Tables(g)'

逐个表格计算

hs=.Rows.Count'

行数

ls=.Columns.Count'

列数

MsgBoxChr(10)&

文档共有表格"

个"

_

Chr(10)&

第"

g&

个表格有"

hs&

行"

ls&

列"

计算WORD表格行列数"

计算信息提示

EndWith

Nextg

计算行数代码格式——文档对象.表格对象.Rows.Count

计算列数代码格式——文档对象.表格对象.Columns.Count

上述方法不能计算嵌入式表格的行/列数。

3.选定WORD表格的指定区域

⑴选定整个表格

Sub选择WORD文档的指定表格整体()

wdWORD.Visible=True'

窗口可见

'

wdWORD.ActiveDocument.Tables

(1).Select'

选择整个表格

wdWORD.ActiveDocument.Tables

(1).Range.Select'

wdWORD.Quit'

关闭新建文档窗口

⑵选定一个单元格

Sub选择WORD表格的第一个单元格()

SetwdBG=wdWORD.ActiveDocument.Tables

(1)'

创建表格对象

wdBG.Cell(1,1).Select'

选择第一个单元格

wdBG.Cell(1,1).Range.Select'

SetwdBG=Nothing'

⑶选定表格最后一个单元格

Sub选择WORD表格的最后一个单元格()

hs=wdWORD.ActiveDocument.Tables

(1).Rows.Count'

ls=wdWORD.ActiveDocument.Tables

(1).Columns.Count'

wdBG.Cell(hs,ls).Range.Select'

选择最后一个单元格

注意:

一个表格的最后一个单元格由表格的最后一行hs和最后一列ls围成的一个方格。

所以表格最后一个单元格的代码格式是.Cell(hs,ls)。

⑷选定指定行/列

Sub选择WORD表格指定行()

wdWORD.ActiveDocument.Tables

(1).Rows(3).Select'

选择第3行

wdWORD.ActiveDocument.Tables

(1).Rows(3).Range.Select'

Sub选择WORD表格指定列()

wdWORD.ActiveDocument.Tables

(1).Columns(3).Select'

选择第3列

【提示】

选择最后一行

wdWORD.ActiveDocument.Tables

(1).Rows(hs).Select

选择最后一列

wdWORD.ActiveDocument.Tables

(1).Columns(ls).Select

⑸选定WORD表格中任意连续区域

①选择连续行

Sub选择WORD表格指定的连续行()

SetwDoc=wdWORD.Documents.Open(dqM)'

SetwBG=wDoc.Tables

(1)'

定义表格变量

wDoc.Range(wBG.Cell(2,1).Range.Start,wBG.Cell(wBG.Rows.Count,wBG.Columns.Count).Range.End).Select'

选择第2行到最后一行

SetwBG=Nothing'

SetwDoc=Nothing'

②选择任意列

Sub选择WORD表格任意指定的连续列()

wDoc.Range(wBG.Cell(1,4).Range.Start,wBG.Cell(wBG.Rows.Count,7).Range.End).Select'

选择第4列到第7列

说明:

列没有Range对象属性。

所以在选择连续列时不能使用如下代码:

wDoc.Range(wBG.Columns(4).Range.Start,wBG.Columns(7).Range.End).Select'

③选择任意连续单元格区域

Sub选择WORD表格任意指定的连续单元格区域()

wDoc.Range(wBG.Cell(5,4).Range.Start,wBG.Cell(7,7).Range.End).Select'

选择第5行4列到第7行7列构成的单元格区域

【小结】

选择WORD表格中的任意连续区域,关键是确定起始位置和终止位置。

选择任意连续单元格区域的关键代码格式如下:

文档对象.Range(表格对象.Cell(起始行,起始列).Range.Start,表格对象.Cell(终止行,终止列).Range.End).Select

4.设置WORD表格的单元格格式

设置WORD表格的单元格格式,包括单元格中的文本对齐格式和文字的字体、字号、是否加粗等格式。

WORD表格单元格中的文本的对齐格式,是指段落在水平方向的对齐方式和在垂直方向的对齐方式。

所以在设置单元格的对齐方式时,一要设置单元格中的文本段落在水平方向的对齐方式即左对齐、居中、右对齐,二要设置文本在垂直方向的对齐方式即靠上、居中、靠下。

【问题】

以WORD文档“成绩表.doc”为例,设置标题行各单元格数据“中部居中(即水平居中且垂直居中)”、“华文新魏”、字号“12”、“加粗”。

Sub设置WORD表格的单元格格式()

WithwdBG.Rows

(1).Range'

表格第1行

.Font.Bold=True'

加粗

.Font.Size=12'

字号

.Font.Name="

华文新魏"

字体

.ParagraphFormat.Alignment=1'

水平居中

.Cells.VerticalAlignment=1'

垂直居中

EndWith

单元格数据居中即WORD程序菜单命令“表格/单元格对齐方式”的“中部居中”,指水平居中和垂直居中。

代码如下:

水平居中——单元格对象.ParagraphFormat.Alignment=1

垂直居中——单元格对象.Cells.VerticalAlignment=1

单元格对齐方式常量一览表

名称

常量代码

赋值

靠上两端对齐

wdAlignParagraphJustify

3

wdCellAlignVerticalTop

靠上居中

wdAlignParagraphCenter

1

靠上右对齐

wdAlignParagraphRight

2

中部两端对齐

wdAlignParagraphJustify

wdCellAlignVerticalCenter

中部居中

中部右对齐

靠下两端对齐

wdCellAlignVerticalBottom

靠下居中

靠下右对齐

注意哦,表中的常量代码,在EXCEL中操作WORD时,由于后期绑定原因,必须用对应的赋值取代方可体现效果!

5.设置WORD表格的对齐格式

在WORD文档中的表格对齐,主要是指表格在页面水平方向的对齐,即左对齐、居中、右对齐。

对应WORD程序菜单命令“表格/表格属性/表格”中的三种对齐方式。

Sub设置WORD文档中的表格对齐()

\放假通知.doc"

dkDOC.Tables

(1).Rows.Alignment=1'

6.在WORD表格中插入(删除)行/列

⑴插入行/列

与当前操作的EXCEL文件保存在同一位置的WORD文档“放假通知.doc”中,第一个表格有2行10列,在表格选定行的上/下方或者左/右侧插入新行/列(一行/列或多行/列)。

①在指定行的上/下插入行

Sub在指定行的上下插入行()

SetwApp=CreateObject("

)'

创建WORD对象

SetwDoc=wApp.documents.Open(dqM)'

wApp.Visible=True'

wDoc.Tables

(1).Rows

(2).Select'

选择指定行(第2行,可以根据表格实际行数修改此数字值)

wDoc.Application.Selection.InsertRowsAbove3'

指定行上方插入3行

wDoc.Application.Selection.InsertRowsBelow3'

指定行下方插入3行

Zh=wDoc.Tables

(1).Rows.Count'

计算插入新行后的表格总行数

MsgBox"

成功新插入3行,当前表格共有"

Zh&

行"

在指定列的上下插入行"

wDoc.CloseTrue

wApp.Quit

SetwApp=Nothing

SetwDoc=Nothing

wDoc.Application.Selection.InsertRowsAbove3——在所选择行的上方新插入3行。

如果执行代码——wDoc.Application.Selection.InsertRowsBelow3,则是在所选择行的下方新插入3行。

②在指定列的左/右插入列

Sub在指定列的左右插入列()

wApp.Visible=T

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 文学研究

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1