vba设置word表格单元格行宽.docx
- 文档编号:24243105
- 上传时间:2023-05-25
- 格式:DOCX
- 页数:8
- 大小:16.51KB
vba设置word表格单元格行宽.docx
《vba设置word表格单元格行宽.docx》由会员分享,可在线阅读,更多相关《vba设置word表格单元格行宽.docx(8页珍藏版)》请在冰豆网上搜索。
vba设置word表格单元格行宽
竭诚为您提供优质文档/双击可除
vba设置word表格单元格行宽
篇一:
用Vba操作word表格word的表格功能是非常重要的一个功能
用Vba操作word表格word的表格功能是非常重要的一个功能,
也是用户经常使用的一项功能,在word20xx中,增加了不少
新的功能。
如果利用Vba自动处理表格将使用户的效率有极大
的提高。
1.向表格单元格插入文字
下面的代码向活动文档的第一个表格的第一个单元格插入
文字。
cell方法返回单个的cell对象。
Range属性返回一个
Range对象。
delete方法用来删除现有的文字,而insertafter方
法用来插入"cell1,1"文字。
ifactivedocument.tables.count>=1then
withactivedocument.tables
(1).cell(Row:
=1,column:
=1).Range
.delete
.insertaftertext:
="cell1,1"
endwith
endif
2在表格中插入文字
下面的代码在文档的开头插入一张3行4列的表格。
For
each...next结构用来循环遍历表格中的每个单元格。
在For
each...next结构中,insertafter方法用来向表格单元格(cell1、
cell2等等)添加文字。
setodoc=activedocument
setotable=odoc.tables.add(Range:
=odoc.Range(start:
=0,end:
=0),
numRows:
=3,numcolumns:
=4)
icount=1
Foreachocellinotable.Range.cells
ocell.Range.insertafter"cell"非常重要,目的
是去掉换行符
否则内容后面会有个小圆点
msgboxmyRange.text
nextacell
4将文本转换为表格
下面的代码在活动文档的开头插入以制表符分隔的文本,
然后将这些文本转换为一张表格。
setoRange1=activedocument.Range(start:
=0,end:
=0)
oRange1.insertbefore"one"关闭屏幕刷新
dqm=thisworkbook.path带路径的woRd文件名称setwdwoRd=createobject("word.application")定义一个word对象变量setdkdoc=wdwoRd.documents.open(dqm)创建文档对象bgs=dkdoc.tables.count当前文档中的表格总数dkdoc.close关闭文档setdkdoc=nothing释放存储空间setwdwoRd=nothing释放存储空间msgboxchr(10)关闭屏幕刷新
endsub
提示:
嵌入式表格如woRd文档中插入的excel表格、表格中插入的表格。
计算表格个数的代码格式——文档对象.tables.count
上述方法不能计算woRd文档中的嵌入式表格个数。
2.计算woRd文档中各个表格的行/列数
【要求】
在excel中,遍历woRd文档“成绩表.doc”中的表格,计算表格的行数和列数。
【代码】
sub计算指定woRd文档中表格行列数()
application.screenupdating=False关闭屏幕刷新
dqm=thisworkbook.path带路径的woRd文件名称setwdwoRd=createobject("word.application")定义一个word对象变量
setdkdoc=wdwoRd.documents.open(dqm)创建文档对象
bgs=dkdoc.tables.count当前文档中的表格总数
Forg=1tobgs循环表格
withdkdoc.tables(g)逐个表格计算
hs=.Rows.count行数
ls=.columns.count列数
msgboxchr(10)计算信息提示endwithnextgdkdoc.close关闭文档setdkdoc=nothing释放存储空间setwdwoRd=nothing释放存储空间application.screenupdating=False关闭屏幕刷新endsub
提示:
计算行数代码格式——文档对象.表格对象.Rows.count
计算列数代码格式——文档对象.表格对象.columns.count上述方法不能计算嵌入式表格的行/列数。
3.选定woRd表格的指定区域⑴选定整个表格【代码】
sub选择woRd文档的指定表格整体()
application.screenupdating=False关闭屏幕刷新
dqm=thisworkbook.path带路径的woRd文件名称setwdwoRd=createobject("word.application")定义一个word对象变量setdkdoc=wdwoRd.documents.open(dqm)创建文档对象wdwoRd.Visible=true窗口可见wdwoRd.activedocument.tables
(1).select选择整个表格wdwoRd.activedocument.tables
(1).Range.select选择整个表格wdwoRd.quit关闭新建文档窗口setdkdoc=nothing释放存储空间setwdwoRd=nothing释放存储空间application.screenupdating=False关闭屏幕刷新endsub⑵选定一个单元格【代码】
sub选择woRd表格的第一个单元格()
application.screenupdating=False关闭屏幕刷新
dqm=thisworkbook.path带路径的woRd文件名称setwdwoRd=createobject("word.application")定义一个word对象变量
setdkdoc=wdwoRd.documents.open(dqm)创建文档对象
wdwoRd.Visible=true窗口可见setwdbg=wdwoRd.activedocument.tables
(1)创建表格对象wdbg.cell(1,1).select选择第一个单元格wdbg.cell(1,1).Range.select选择第一个单元格
wdwoRd.quit关闭新建文档窗口setwdbg=nothing释放存储空间setdkdoc=nothing释放存储空间setwdwoRd=nothing释放存储空间application.screenupdating=False关闭屏幕刷新endsub
⑶选定表格最后一个单元格
【代码】
sub选择woRd表格的最后一个单元格()
application.screenupdating=False关闭屏幕刷新
dqm=thisworkbook.path带路径的woRd文件名称setwdwoRd=createobject("word.application")定义一个word对象变量
setdkdoc=wdwoRd.documents.open(dqm)创建文档对象
hs=wdwoRd.activedocument.tables
(1).Rows.count行数
ls=wdwoRd.activedocument.tables
(1).columns.count列数
wdwoRd.Visible=true窗口可见
setwdbg=wdwoRd.activedocument.tables
(1)创建表格对象
wdbg.cell(hs,ls).Range.select选择最后一个单元格
wdwoRd.quit关闭新建文档窗口
setwdbg=nothing释放存储空间
setdkdoc=nothing释放存储空间
setwdwoRd=nothing释放存储空间
application.screenupdating=False关闭屏幕刷新endsub注意:
一个表格的最后一个单元格由表格的最后一行hs和最后一列ls围成的一个方格。
所以表格最后一个单元格的代码格式是.cell(hs,ls)。
⑷选定指定行/列【代码】
sub选择woRd表格指定行()
application.screenupdating=False关闭屏幕刷新
dqm=thisworkbook.path带路径的woRd文件名称setwdwoRd=createobject("word.application")定义一个word对象变量
setdkdoc=wdwoRd.documents.open(dqm)创建文档对象wdwoRd.Visible=true窗口可见wdwoRd.activedocument.tables
(1).Rows(3).select选择第3行wdwoRd.activedocument.tables
(1).Rows(3).Range.select选择第3行wdwoRd.quit关闭新建文档窗口setdkdoc=nothing释放存储空间setwdwoRd=nothing释放存储空间application.screenupdating=False关闭屏幕刷新endsub
sub选择woRd表格指定列()
application.screenupdating=False关闭屏幕刷新
dqm=thisworkbook.path带路径的woRd文件名称setwdwoRd=createobject("word.application")定义一个word对象变量
setdkdoc=wdwoRd.documents.open(dqm)创建文档对象
篇三:
使用Vba操作word表格
使用Vba操作word表格
一、生成表格
privatesubcreatetable(mRowsasinteger,mcolumns)
dimmRangeasRange
setmRange=activedocument.Range
mRange.setRangestart:
=activedocument.Range.end,end:
=activedocument.Range.end
setselfgentable=activedocument.tables.add(Range:
=mRange,numRows:
=mRows,numcolumns:
=mcolumns)
endsub
上面过程的作用是在活动文档的末尾插入一个mRows行,mcolumns列的表格。
二、在读写表格中的单元格
写入单元格使用如下代码:
tableobject.cell(Row:
=curRow,column:
=curcolumn).Range.insertafter"文本"上面代码的做用时在curRow行,curcolumn列处插入字符“文本”。
其中tableobject为表格对象,如果使用了生成表格中的例子,那么可以用selfgentable来替代tableobject。
三、调整单元格对齐方式
水平对齐设置
selection.paragraphFormat.alignment=水平对齐常数(具体的常数可以查看帮助文件的说明)如何选择单元格?
选定特定单元格
tableobject.cell(Row:
=1,column:
=1).select’选定单元格1,1
选定行
tableobject.Rows(i).select’选定第i行
选定列
tableobject.columns(i).select’选定第i列
选定整个表格
tableobject.select
首先执行表格元素选择程序,然后再使用selection.paragraphFormat.alignment设置对齐方式。
垂直对齐方式
selection.cells.Verticalalignment=垂直对齐常数
也是首先选择表格元素,可以使单个单元格,单个行、单个列或者整个表格。
似乎也可以同时选择多个单元格、多个行、多个列,有兴趣的朋友可以自行寻找答案。
四、设置表格边线类型
下面的代码对整个表格的所有边线设置成细实线:
selfgentable.select
withselection
.borders(wdborderbottom).linestyle=wdlinestylesingle
.borders(wdborderleft).linestyle=wdlinestylesingle
.borders(wdborderRight).linestyle=wdlinestylesingle
.borders(wdbordertop).linestyle=wdlinestylesingle
.borders(wdborderhorizontal).linestyle=wdlinestylesingle
.borders(wdborderVertical).linestyle=wdlinestylesingle
endwith
同样是对selection进行设置,所以可以依照上面的方法对特定的单元格、行或者列的边线样式进行分别设置,这里就不再列举了。
五、调整表格尺寸
下面的代码对一个六列的表格设置宽度,宽度采用百分比宽度,从左至右的宽度百分比依次为:
30,10,10,30,10,10:
dimwidthp(0to2)asinteger
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- vba 设置 word 表格 单元格
![提示](https://static.bdocx.com/images/bang_tan.gif)