一、如何用VBA设置WORD文档的题目(即第一段)的格式
Sub 宏1()
Dim str As String, i As Integer, j As Integer
j = 0
str = Application.ActiveDocument.Paragraphs(1).Range.Text
For i = 1 To Len(str)
If Mid(str, i, 1) = " " Then
Else
Exit For
End If
j = j + 1
Next
str = Right(str, Len(str) - j)
Application.ActiveDocument.Paragraphs(1).Range.Text = str
Application.ActiveDocument.Paragraphs(1).Range.Select
Selection.Font.Name = "黑体"
Selection.Font.Size = 18
Selection.Font.Bold = wdToggle
Selection.ParagraphFormat.Alignment = wdAlignParagraphCenter
End Sub
二、求:(vba操作代码)word接受对文档的所有修订后保存,谢谢
AcceptAll 方法
接受某一文档或区域中的所有修订。修订标记将被删除,修订将合并到文档中。
expression.AcceptAll
expression 必需。返回 Revision 对象的表达式。
说明
应用 AcceptAllRevisions 方法来接受文档中的所有修订。
示例
本示例接受活动文档中的所有修订。
If ActiveDocument.Revisions.Count >= 1 Then _
ActiveDocument.Revisions.AcceptAll
本示例接受所选内容中的所有修订。
Selection.Range.Revisions.AcceptAll
三、Excel VBA操作word文件
在 Word 中,几乎所有的操作都要调用 Document 对象本身或其内容。
当您用 VBA 操作 Word 时,Document 对象表示一个打开的文档,而且所有的 Document 对象都是 Application 对象的 Documents 集合的成员。文档是一个由字符、单词、句子和段落组成的集合,字符组成单词,单词组成句子,句子组成段落,等等。
因此,每一个 Document 对象都具有 Characters、Words、Sentences 和 Paragraghs 四个集合。此外,每个文档具有一个包含一个或多个节的 Sections 集合,每一个节都有一个包含该节页眉和页脚的 HeadersFooters 集合。
注意: 您可以在 Microsoft Office 2000 开发人员对象模型指南(英文)中查阅完整的 Word 对象模型。另外,您也可以使用对象浏览器和 Microsoft Word Visual Basic 参考帮助来学习有关具体某个对象、属性、方法和事件的详细内容。
通过 VBA 使用 Word 时,Document 对象处于中心位置。如果您要打开文档或创建新文档,就要创建新的 Document 对象。
每个打开或新创建的文档均被添加至 Documents 集合。具有焦点的文档称为活动文档,由 ActiveDocument 属性表示。
Document 对象作为 Documents 集合中的一个成员,您可以通过使用 Document 对象的索引值(Document 对象在 Documents 集合中的位置,1 是集合中的第一个文档)或名称来引用它。另外,您也可以使用 ActiveDocument 属性来引用当前具有焦点的文档。
例如,如果名为 Policies.doc 的文档是唯一打开的文档,则以下三个对象变量将全部指向 Policies.doc:Dim docOne As Word.Document Dim docTwo As Word.Document Dim docThree As Word.DocumentSet docOne = Documents(1) Set docTwo = Documents("Policies.doc") Set docThree = ActiveDocument一般情况下不要使用 Documents 集合中的索引值来引用文档,因为当其它文档打开或关闭时,某个特定文档的索引值可能会随之改变。通常,您可以通过使用 ActiveDocument 属性或使用 Documents 集合的 Add 方法或 Open 方法创建的 Document 对象变量。
以下示例显示了如何使用 ActiveDocument 属性把一个地址添加到当前具有焦点的文档中:With ActiveDocument .Envelope.Insert Address:="Office Talk" _ & vbCrLf & "One Microsoft Way" & vbCrLf _ & "Redmond, WA 98052", ReturnAddress:= _ "David Shank" & vbCrLf & _ "77 First Street" & vbCrLf & _ "Any Town, USA 12345"End With下面的示例说明如何通过使用 Documents 集合的 Open 方法,实例化 Document 对象变量。Dim docPolicy As Word.DocumentSet docPolicy = Documents.Open("c:\my documents\policies.doc")最后一个示例显示如何通过使用 Add 方法,为新的空文档创建 Document 对象的实例。
Dim docPolicy As Word.DocumentSet docPolicy = Documents.Add通过使用 Open 方法打开的文档,或者通过使用 Add 方法创建的文档,都将成为用 ActiveDocument 属性表示的当前活动文档。如果您想使 Documents 集合里的其它文档成为活动文档,可使用 Document 对象的 Active 方法。
一旦您获取了要操作的 Document 对象,绝大部分您想通过 VBA 进行的工作将涉及文本的操作。首先要指定文档的一个部分,然后对它进行某些操作。
例如,添加或删除文本,或者设置单词或字符的格式。您可以使用 Range 或 Selection 这两个对象来完成很多工作。
Word vba常用语句100句1、系统参数(01) Application.ActivePrinter '获取当前打印机(02) Application.Height '当前应用程序文档的高度 (03) Application.Width '当前应用程序文档的宽度 (04) Application.Build '获取Word版本号和编译序号 (05) Application.Caption '当前应用程序名 (06) Application.DefaultSaveFormat '返回空字符串,表示Word文档 (07) Application.DisplayRecentFiles '返回是否显示最近使用的文档的状态 (08) Application.Documents.Count '返回当前打开的文档数 (09) Application.FontNames.Count '返回当前可用的字体数 (10) Application.Left '返回当前文档的水平位置 (11) Application.MacroContainer.FullName '返回当前文档名,包括所在路径 Application.MacroContainer.pach '返回当前文档路径Application.ActiveDocument.Path '获得文件的相对路径 (12) Application.NormalTemplate.FullName '返回文档标准模板名称及所在位置 (13) Application.RecentFiles.Count '返回最近打开的文档数目 (14) Application.System.CountryRegion '返回应用程序所在的地区代码 (15) Application.System.FreeDiskSpace '返回应用程序所在磁盘可用空间 (16) Application.System.HorizontalResolution '返回显示器的水平分辨率 (17) Application.System.VerticalResolution '返回显示器的垂直分辨率 (18) Application.System.LanguageDesignation '返回系统所使用的语言 (19) Application.System.MathCoprocessorInstalled '返回系统是否安装了数学协处理器 (20) Application.System.OperatingSystem '返回当前操作系统。
四、VBA如何在WORD中实现移动表格
使用VBA操作Word表格一、生成表格Private Sub CreateTable(mRows As Integer, mColumns) Dim mRange As RangeSet mRange = ActiveDocument.RangemRange.SetRange Start:=ActiveDocument.Range.End, End:=ActiveDocument.Range.EndSet SelfGenTable = ActiveDocument.Tables.Add(Range:=mRange, NumRows:=mRows, NumColumns:=mColumns) End Sub上面过程的作用是在活动文档的末尾插入一个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 With Selection.Borders(wdBorderBottom).LineStyle = wdLineStyleSingle .Borders(wdBorderLeft).LineStyle = wdLineStyleSingle .Borders(wdBorderRight).LineStyle = wdLineStyleSingle .Borders(wdBorderTop).LineStyle = wdLineStyleSingle.Borders(wdBorderHorizontal).LineStyle = wdLineStyleSingleBorders(wdBorderVertical).LineStyle = wdLineStyleSingle End With同样是对Selection进行设置,所以可以依照上面的方法对特定的单元格、行或者列的边线样式进行分别设置,这里就不再列举了。
五、调整表格尺寸下面的代码对一个六列的表格设置宽度,宽度采用百分比宽度,从左至右的宽度百分比依次为:30,10,10,30,10,10: Dim WidthP(0 To 2) As Integer Dim j As Integer dim i as Integer WidthP(0) = 30 WidthP(1) = 10 WidthP(2) = 10 j = 0For i = 0 To SelfGenTable.Columns.Count - 1 If j > 2 Then j = 0 End IfSelfGenTable.Columns(i + 1).PreferredWidthType = wdPreferredWidthPercent SelfGenTable.Columns(i + 1).PreferredWidth = WidthP(j) j = j + 1 Next上面的代码通过Columns的PreferredWidthType属性设置表格列宽的形式,这里选择的是百分比列宽,可以根据自己的实际情况选择其他列宽形式,然后再设置相应的数值。 表格的行高请读者以此类推(实际上我还没设置过行高,都用自动生成的就够了) ===============================================编写操作表格的程序时需要注意,Word表格的行列起始值为1,而不是0。
===============================================下面是一个拆分字符串的代码,当插入表格的文本过长时,可以设定一个长度,超过这个长度就进行回车,这样保证在设定的单元格宽度内能够写下长文本。单元格的高度会自动调整以使文本能完整的显示,这也就是我为什么没有通过代码设置单元格高度的原因。
Private Function FoldText(mLen As Integer, mStr As String) As String '折叠文字函数,mLen为折叠前的文字长度,mStr为文字的内容 Dim i As IntegerDim tmpStr(0 To 1) As String '临时字符串 If Len(mStr) > mLen ThenDo While Len(mStr) > mLen tmpStr(0) = Left(mStr, mLen)mStr = Right(mStr, Len(mStr) - mLen)tmpStr(1) = tmpStr(1) + tmpStr(0) + vbCrLf LooptmpStr(1) = tmpStr(1) + mStr ElsetmpStr(1) = mStr。
五、vba在word文档中如何插入文字并设置相应的文字属性
下面的VBA代码功能,第一步,word当前文档的上面添加文字dzwebs文字。然后,又设置第一段居中对齐,并在该段落之后添加半英寸的间距。将dzwebs的格式设为36磅,隶书字体。
Dim rngFormat As Range
Set rngFormat = ActiveDocument.Range(Start:=0, End:=0)
With rngFormat
.InsertAfter Text:="dzwebs"
.InsertParagraphAfter
With .Font
.Name = "隶书"
.Size = 36
.Bold = True
End With
End With
With ActiveDocument.Paragraphs(1)
.Alignment = wdAlignParagraphCenter
.SpaceAfter = InchesToPoints(0.5)
End With
部分代码解释:
Dim rngFormat As Range 定义变量
Set rngFormat = ActiveDocument.Range(Start:=0, End:=0) 设置rngFormat变量的位置,位于文档的最上面
With rngFormat
里面的代码功能是设置字体字号等属性
End With
With ActiveDocument.Paragraphs(1)
.Alignment = wdAlignParagraphCenter
.SpaceAfter = InchesToPoints(0.5)
End With
该代码代码功能是添加段后距离为0.5英寸
六、VBA修改word文档
开启模糊查询即可,再判断一下查找的长度
Sub 分章()
Set myrange = ActiveDocument.Content
For n = 1 To 8
myrange.Find.Execute findtext:="第*章", Forward:=True, MatchWildcards:=True
If myrange.End - myrange.Start < 20 Then
myrange.Style = ActiveDocument.Styles("标题 2")
End If
Next
End Sub
测试运行了下,效果有点不好,修改一下
Sub 分章()
Set myrange = ActiveDocument.Content
For n = 1 To 8
myrange.Find.Execute findtext:="第*章", Forward:=True, MatchWildcards:=True
If myrange.End - myrange.Start < 20 Then
myrange.Style = ActiveDocument.Styles("标题 2")
Else
myrange.Start = myrange.Start + 1
End If
Next
End Sub
七、怎样在Word中用VBA操作表格
1、在新工作表的Sheet1上点击右键 2、选择查看代码 3、点击倒三角,选择Worksheet 4、点击右边倒三角,选择触发方式,如BeforeDoubleClick表示在双击鼠标左键时触发 5、点击候出现如下代码框架 6、输入以下语句:Sheet1.Cells(1, 3) = Sheet1.Cells(1, 1) + Sheet1.Cells(1, 2)意为将A1、B1单元格求和并放在C1单元格 7、点击保存,然后关闭VBA窗口 8、由于A1,B1没有数据,所以C1为0 9、输入数据后,会发现即使按了回车,C1也不变,因为设置的是双击鼠标左键触发。
10、双击鼠标左键后就变了 。
八、如何设置Word文档的编辑权限
Word 2007中提供了强大的编辑权限设置功能,可以选择相应的文档内容,并指定可以编辑该段内容的用户,具体的操作步骤如下。
① 选中需要设置编辑权限的内容,可一次选中多个区域。切换到【审阅】选项卡,单击【保护】组中的“保护文档”按钮从弹出的下拉菜单中选择【限制格式和编辑】选项。
② 在打开的【限制格式和编辑】任务窗格中选中【仅允许在文档中进行此类编辑】复选框,并在其下拉列表框中选择【未做任何更改(只读)】选项。③ 单击【更多用户】链接打开【添加用户】对话框,按照提示添加相应的用户,添加上用户后选中其前的复选框,最后单击“是,启动强制保护”按钮设置相应的密码即可。
九、VBA如何选中Word文档中的文本、表格
Select方法可用于多种对象,例如Bookmark、Field、Range 和Table对象。
A:下列示例选定活动文档中的第一个表格
Sub SelectTable()
ActiveDocument.Tables(1).Select
End Sub
B:下列示例选定活动文档中的第一个域
Sub SelectField()
ActiveDocument.Fields(1).Select
End Sub
C:下列示例选定活动文档中的前四个段落
Range方法用于创建一个引用前四个段落的 Range对象,然后将 Select方法应用于 Range对象。
Sub SelectRange()
Dim rngParagraphs As Range
Set rngParagraphs = ActiveDocument.Range( Start:=ActiveDocument.Paragraphs(1).Range.Start, End:=ActiveDocument.Paragraphs(4).Range.End)
rngParagraphs.Select
End Sub
D:下列命令选定活动文档中的第一个单词
Sub SelectFirstWord()
ActiveDocument.Words(1).Select
End Sub
转载请注明出处51数据库 » vbaword设置活动文档