word vba实现文档里,每个字的字体都是随机指定的几个字体,如图
参考代码,如果需要其他功能,自己修改一下吧。
Dim mydocument As New Document
ActiveDocument.Range.Copy
mydocument.Range.Paste
With mydocument.Range
.Find.ClearFormatting
.Find.Replacement.ClearFormatting
With .Find
.Text = "*三部门(*)2万元*"
.Replacement.Text = "\1^13"
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchByte = False
.MatchAllWordForms = False
.MatchSoundsLike = False
.MatchWildcards = True
End With
.Find.Execute Replace:=wdReplaceAll
End With
欢迎学习VBA。不过问题比较笼统哦,不知道怎么帮你了,呵呵
建议拿一个具体实例出来讨论,这样能够更好地说明。
另外,VBA必须寄生于已有的应用程序,必须依赖于它的"父"应用程序,例如EXCEL、Word、AutoCAD,只能在它的"父"应用程序中运行,而不能独立运行。因此,你只要说Word VBA编程或Excel VBA编程,大家就会明白啦 ^_^
Sub fonts()
Dim arr()
Set fontlist = Application.CommandBars("formatting").FindControl(ID:=1728)
For i = 1 To fontlist.ListCount
If Asc(Left(fontlist.List(i), 1)) < 0 Then
n = n + 1
ReDim Preserve arr(1 To n)
arr(n) = fontlist.List(i)
End If
Next
a = ActiveDocument.BuiltInDocumentProperties(wdPropertyWords)
For n = 0 To a
Selection.Start = n
Selection.End = n + 1
Selection.Font.Name = arr(Int((UBound(arr) - 1 + 1) * Rnd + 1))
Next
End Sub
Sub Font() '
' Font 宏
' 更改所选内容的字体
Dim arr(5)
arr(1) = "okme"
arr(2) = "楷体"
arr(3) = "okme"
arr(4) = "楷体"
arr(5) = "okme"
a = ActiveDocument.BuiltInDocumentProperties(wdPropertyWords)
For n = 0 To a
Selection.Start = n
Selection.End = n + 1
Selection.Font.Name = arr(Int((UBound(arr) - 1 + 1) * Rnd + 1))
Next
End Sub
以上内容来自感谢沪-沉香屑(14164910)大神
能行了,真是隔行如隔山
非常感谢
中败右倍: Sub CheckSelction() With Selection If .Type = wdSelectionIP Then If .Start = 0 Then MsgBox "光标位于文档首" ElseIf .Start = ActiveDocument.Content.End - 1 Then MsgBox "光标位于文档末" ElseIf .Characters(1) = Chr(13) Then MsgBox "光...
长白朝鲜族自治县15533781771: 用word VBA 实现, 如何实现word文件中任意两个关键词之间的所有文字道一个新Word 文件中? - ?
中败右倍: 参考代码,如果需要其他功能,自己修改一下吧.Dim mydocument As New Document ActiveDocument.Range.Copy mydocument.Range.Paste With mydocument.Range .Find.ClearFormatting .Find.Replacement.ClearFormatting With .Find .Text...
长白朝鲜族自治县15533781771: vba在word文档中如何插入文字并设置相应的文字属性? - ?
中败右倍: 下面的VBA代码功能,第一步,word当前文档的上面添加文字dzwebs文字.然后,又设置第一段居中对齐,并在该段落之后添加半英寸的间距.将dzwebs的格式设为36磅,隶书字体. Dim rngFormat As Range Set rngFormat = ...
长白朝鲜族自治县15533781771: word中如何利用VBA把全部汉字批量转化成区位码 - ?
中败右倍: 终于给你找到了解决方法,你可以先把word文档中需要替换的内容复制到Excel,然后再写入如下代码就可以了.去这个人的博 ---客 就会发现代码的.
长白朝鲜族自治县15533781771: VBA编写代码获得word每一行的单词,如何做才对 - ?
中败右倍: 设文档共20行,500个字 hs代表文档的行数,从第1行到第20行 hs = 1 To ActiveDocument.BuiltInDocumentProperties("Number of lines").Value 在写入时,Print #1, ActiveDocument.Words(hs).text,表示只写到第20个字就结结束了,而不是第...
长白朝鲜族自治县15533781771: 如何利用VBA在 word中,实现这样的功能:选中文字,然后按一个按钮,这些文字就自动设置好了动画效果? - ?
中败右倍: ShowVisualBasicEditor = True ActiveDocument.Shapes.AddTextEffect(msoTextEffect26, _ "【解析】人们研制了许许多多计算机程序设计语言,其中二进制", "宋体", 36#, msoFalse, msoFalse, -190.95 _ , 92.8).Select ShowVisualBasicEditor = True
长白朝鲜族自治县15533781771: word文档中如何把一个句子中每个字后面插入一个空格,然后把空格间距调到最小 - ?
中败右倍: 使用WORD中的查找替换功能(快捷键是CTRL+H) 查找内容:?替换为:^&空格 (键盘空格键输入空格,想输几个都行)高级选项勾选使用通配符,全部替换.
长白朝鲜族自治县15533781771: 谁能帮我设计一个“在WORD文档的文本中的每两个字符(非特殊字符}间快速插入空格”的VBA程序啊?谢谢! - ?
中败右倍: 自己录制宏,然后循环...
长白朝鲜族自治县15533781771: word 同时选中多个文档中某字 - ?
中败右倍: 提供一个方案给楼主参考,可以批量修改多个文档中某个指定文字的属性:1、启动Word后,键入Alt+F11打开VBA编辑窗口;2、选择菜单“插入->模块”,然后在代码编辑区中粘贴如下代码:Option Explicit Const g_strRootPath = "c:\Docs\"...
长白朝鲜族自治县15533781771: 怎么能运用excel的vba读取word文档中的内容 - ?
中败右倍: Sub AAA()Dim FilePath As String '要读取的文件路径Dim S1 As String '文档的内容Dim S2 As String '提取到的内容Dim Ar As Variant '用于保存最终结果Dim L1 As Long '记录当前查找到的字符位置FilePath = Application....