高达seed人物关系:word 宏的使用
来源:百度文库 编辑:偶看新闻 时间:2024/04/29 23:20:20
Word宏处理常用代码
vb环境中输入以下代码:
·················································
1.调整图片大小
·················································
Sub setpicsize() '设置图片大小
Dim n '图片个数
On Error Resume Next '忽略错误
For n = 1 To ActiveDocument.InlineShapes.Count 'InlineShapes类型图片
ActiveDocument.InlineShapes(n).Height = 400 '设置图片高度为 400px
ActiveDocument.InlineShapes(n).Width = 300 '设置图片宽度 300px
Next n
For n = 1 To ActiveDocument.Shapes.Count 'Shapes类型图片
ActiveDocument.Shapes(n).Height = 400 '设置图片高度为 400px
ActiveDocument.Shapes(n).Width = 300 '设置图片宽度 300px
Next n
End Sub
·················································
2.转字体
·················································
Sub 批量设置小5号字体() '此代码为指定文件夹中所有选取的WORD文件的进行格式设置
Dim MyDialog As FileDialog, vrtSelectedItem As Variant, Doc As Document
' On Error Resume Next '忽略错误
'定义一个文件夹选取对话框
Set MyDialog = Application.FileDialog(msoFileDialogFilePicker)
With MyDialog
.Title = "请选择要处理的文档(可多选)"
.Filters.Clear '清除所有文件筛选器中的项目
.Filters.Add "所有 WORD 文件", "*.doc", 1 '增加筛选器的项目为所有WORD文件
.AllowMultiSelect = True '允许多项选择
If .Show = -1 Then '确定
Application.ScreenUpdating = False
For Each vrtSelectedItem In .SelectedItems '在所有选取项目中循环
Set Doc = Documents.Open(FileName:=vrtSelectedItem, Visible:=False)
With Doc
With .Content
With .Font
' .NameFarEast = "宋体" '中文字体,已禁用
' .NameAscii = "Times New Roman" '英文字体,已禁用
.Size = 9
End With
End With
.Close True
End With
Next
Application.ScreenUpdating = True
End If
End With
MsgBox "批量设置完毕!", vbInformation
End Sub
·················································
3.转文件格式
·················································
Sub Macro1()
'
' Macro1 Macro
' 宏在 01-10-31 由 WDX 录制
'
End Sub
使用Word的宏删除多余回车及空格行
如果拷贝下来的文字里有连续的多行空行,或者在有些空行里还有数量不等的空格字符,不妨让Word的宏来一显身手。
创建一个宏,取名为DBL。代码及注释如下:
Sub DBL()
i = 1
Do
'从当前文档的顶端开始逐一选择文档的每一段文字
ActiveDocument.Paragraphs(i).Range.Select
If Trim(Selection.Text) = Chr(13) Then
'如果选择的段落里只有回车符和空格则删除此段
Selection.Delete
Else
'如果选择的段落非空,就将选择的指针移向下一段
Selection.MoveDown
i = i + 1
End If
Loop Until i = ActiveDocument.Paragraphs(i).Count
End Sub
写好了宏程序之后,可以把刚才建好的宏拖拽到快捷工具栏上,做好以后,如果需要从网页上拷贝文字到Word上编辑时,只要单击一次这个宏按钮,即可瞬间删除整篇文档里的空行了。
附后:
- '/*******************************************************************/
- '/作者: darkread mail:darkread@gmail.com /
- '/小组: CD Team /
- '/功能:清除当前文档中所有多余的回车 /
- '/过程:word,检索每一段,如果在清除了空格(含全角)后只剩一个回车,那 /
- '/么删除该段 /
- '/权利:在使用或者发布时请保留该注释,谢谢 /
- '/*******************************************************************/
- Sub ClearEnter()
- Const SPACECHR = " "
- Const SPACEWCHR = " "
- Dim rg As Range
- Set rg = ActiveDocument.Range
- Dim i As Integer
- Dim sTxt As String
- i = 1
- While (i <= rg.Paragraphs.Count)
- sTxt = rg.Paragraphs(i).Range.Text
- sTxt = Replace(sTxt, SPACECHR, "")
- sTxt = Replace(sTxt, SPACEWCHR, "")
- If Len(sTxt) <= 2 Then
- rg.Paragraphs(i).Range.Delete
- If i >= rg.Paragraphs.Count Then
- GoTo ENDWHILE
- End If
- Else
- i = i + 1
- End If
- Wend
- ENDWHILE:
- End Sub