精华内容
下载资源
问答
  • 如要将一个Word文档内的两个汉字中间的空格替换掉(之所以要特定要求两个汉字中间,是为了避免文本中的英文空格替换掉),可以使用查找替换的通配符。查找:([一-﨩])( )([一-﨩])替换:13写成VBA代码:Sub 替换()...

    如要将一个Word文档内的两个汉字中间的空格替换掉(之所以要特定要求两个汉字中间,是为了避免文本中的英文空格替换掉),可以使用查找、替换的通配符。

    91e3b622dc2f5c6c0491f7a0f1af4516.png

    查找:([一-﨩])( )([一-﨩])

    替换:13

    写成VBA代码:

    Sub 替换()With Selection.Find .Text = "([一-﨩])( )([一-﨩])" .Replacement.Text = "13" .Forward = True .Wrap = wdFindContinue .Format = False .MatchCase = False .MatchWholeWord = False .MatchByte = False .MatchAllWordForms = False .MatchSoundsLike = False .MatchWildcards = True End With Selection.Find.Execute Replace:=wdReplaceAllEnd Sub

    如果使用正则的选择、查找、替换,则会有副作用,因为要先选择,会将其中的文本格式、图片都替换掉。

    Sub replacetxt222() Dim regex As Object Dim regMatch As Object Set regex = CreateObject("VBScript.RegExp") Dim str As String str = Selection.Text With regex .Pattern = "([一-﨩])( )([一-﨩])" .MultiLine = True .Global = True .IgnoreCase = True str = .Replace(str, "$1$3") Debug.Print (str) End With Selection.Text = strEnd Sub

    当然也可以将中文中的半角标点替换为全角:

    002e652c9e315c31c5650578d223a900.png

    ([一-﨩])(,)([一-﨩])

    1,3

    通配符的一般规则为:

    da686b3183ec41b58f8945b899d17b1e.png

    如() ()就可以分组匹配两个单词,中间有空格。

    另外,d在正则中表示数字,而在查找、替换对话框中是没有这一写法的,可以用以下表达式表示:

    [0-9]{1,2}

    表示匹配一个或两个数字。

    需要注意的是,VBA的正则表达式与查找对话框中的通配符的写法与支持的功能是有所区别的。

    查找、替换对话框中不使用通配符时,可用^#来表示数字,其“特殊格式”的弹出菜单为:

    236fb75cd67d8be579976a9b0ce83e32.png

    如段落标记^p,通配符中用^13表示。

    查找、替换对话框中使用通配符时,其“特殊格式”的弹出菜单为:

    ecdd3fb336b9d0df06d17dc06a091b55.png

    一些常用的特殊格式的通配符写法可以从以上弹出菜单中得到帮助。

    -End-

    展开全文
  • Word VBA教程:查找替换文字或格式

    万次阅读 2018-08-18 10:48:54
    通过Find 和Replacement对象可实现查找替换功能。Selection 和Range对象可以使用 Find对象。从 Selection 或 Range对象访问 Find对象时,查找操作会略有不同。 查找并选定文字 如果从 Selection对象访问 Find...

    通过Find 和Replacement对象可实现查找和替换功能。Selection 和Range对象可以使用 Find对象。从 Selection 或 Range对象访问 Find对象时,查找操作会略有不同。

    查找并选定文字

    如果从 Selection对象访问 Find对象,当找到搜索条件时,就会更改所选内容。下列示例选定下一个出现的“Hello”。如果到达文档结尾时仍未找到“Hello”,则停止搜索。

     

    With Selection.Find

        .Forward = True

        .Wrap = wdFindStop

        .Text = "Hello"

        .Execute

    End With

    Find对象包含与“查找和替换”对话框中的选项相关的属性(在“编辑”菜单上选择“查找”可显示该对话框)。可以设置 Find对象单独的属性或使用Execute方法的参数,如下例所示。

     

    Selection.Find.Execute FindText:="Hello", _

        Forward:=True, Wrap:=wdFindStop

    查找文字,但不更改所选内容

    如果从 Range对象访问 Find对象,则找到搜索条件时,不更改所选内容,但是会重新定义 Range对象。下列示例在活动文档中查找第一个出现的“blue”。如果找到该单词,则重新定义该区域,并将加粗格式应用于单词“blue”。

     

    With ActiveDocument.Content.Find

        .Text = "blue"

        .Forward = True

        .Execute

        If .Found = True Then .Parent.Bold = True

    End With

    下列示例使用 Execute方法的参数,执行结果与上例相同。

     

    Set myRange = ActiveDocument.Content

    myRange.Find.Execute FindText:="blue", Forward:=True

    If myRange.Find.Found = True Then myRange.Bold = True

    使用 Replacement对象

    Replacement对象代表查找和替换操作的替换条件。Replacement对象的属性和方法对应于“查找和替换”对话框中的选项(单击“编辑”菜单中的“查找”或“替换”命令可显示该对话框)。

    可通过 Find对象使用 Replacement对象。下列示例将所有单词“hi”替换为“hello”。由于 Find对象是通过 Selection对象访问的,所以当找到搜索条件时,会更改所选内容。

     

    With Selection.Find

        .ClearFormatting

        .Text = "hi"

        .Replacement.ClearFormatting

        .Replacement.Text = "hello"

        .Execute Replace:=wdReplaceAll, Forward:=True, _

            Wrap:=wdFindContinue

    End With

    下列示例取消活动文档中的加粗格式。Find对象的Bold属性为 True,而 Replacement对象的该属性为 False。若要查找并替换格式,可将查找和替换文字设为空字符串 (""),并将 Execute方法的 Format参数设为 True。由于从 Range对象访问 Find对象,所选内容将保持不变(Content属性返回一个 Range对象)。

     

    With ActiveDocument.Content.Find

        .ClearFormatting

        .Font.Bold = True

        With .Replacement

            .ClearFormatting

            .Font.Bold = False

        End With

        .Execute FindText:="", ReplaceWith:="", _

            Format:=True, Replace:=wdReplaceAll

    End With

     

    展开全文
  • 文本内容中查找、搜索指定的文本字符串,可以指定是否忽略大小写、查找起始位置、文本是否遵循对象的形状或边框的路径、指定要查找文本索引类型等。索引类型可以是字符、单词或段落。 使用 Text 类提供的 Find ...

    在文本内容中查找、搜索指定的文本字符串,可以指定是否忽略大小写、查找起始位置、文本是否遵循对象的形状或边框的路径、指定要查找的文本索引类型等。索引类型可以是字符、单词或段落。

    使用 Text 类提供的 Find 方法,可以实现文本的查找、搜索,尤其适合在段落文本中进行查找、搜索,速度较快。

    参数说明

    参数 描述
    Text Text    指定要查找的文本。字符串必须包含在引号中。
    CaseSensitive 确定是否匹配text参数中的文本的大小写(是否大小写敏感)。
    StartIndex 指定文本范围中的第一个文本对象。如果索引类型设置为word,并且开始索引为3,则 StartIndex 参数从所选文本框架中的第三个单词开始范围。该参数是可选的,其默认值为1。
    WrapAround 确定文本是否遵循对象的形状或边框的路径。该参数是可选的,其默认值为False。
    IndexingType 指定要查找的文本类型。索引类型可以是字符、单词或段落。参数IndexingType的值是cdrTextIndexingType。这个参数是可选的,默认值是cdrCharacterIndexing(0)。

     

    代码例子

    展开全文
  • ' 遍历当前页面所有的文本形状(通过查找) For Each s In ActivePage.FindShapes(, cdrTextShape) ' 替换 # 为当前日期 s.Text.Replace "#", CStr(Date), False, ReplaceAll:=True Next s End

    将文本中的一个文本字符串替换为另一个文本字符串。此代码片示例将页面上所有出现的“#”替换为当前日期。

    参考代码

    Sub test()
    	' 定义形状变量
    	Dim s As Shape
    	' 遍历当前页面所有的文本形状(通过查找)
    	For Each s In ActivePage.FindShapes(, cdrTextShape)
    		' 替换 # 为当前日期
    		s.Text.Replace "#", CStr(Date), False, ReplaceAll:=True
    	Next s
    End Sub

     

    展开全文
  • 发现系统批量搜索Excel中的文字不好用,替换更无从谈起,于是利用VBA自己搞。 1、点击固定一个单元格,激发对话框打开事件,选定要搜索的文件夹。 2、选定后自动在该单元格下列出文件夹路径,和文件列表同时加载...
  • Word-VBA替换文字

    千次阅读 2020-09-09 12:11:13
    '工具-引用 ...WordDoc.Range.Find.Execute findtext:="被替换掉啥", ReplaceWith:="替换成啥", MatchWildcards:=True, Forward:=True, Replace:=wdReplaceAll, Wrap:=wdFindContinue 如果不引用,.
  • VBA批量替换TXT或.LOG文件内容

    千次阅读 2020-01-17 18:39:41
    Sub 替换() Dim tmp As String Dim file As String file = Dir(ThisWorkbook.Path + "\*.sql") Do While file <> "" Open ThisWorkbook.Path + "\" + file For Binary As #1 str= String(LOF(1), vbNull.....
  • Excel VBA实现的多值替换,弥补了excel一次只能查找单项内容进行替换的功能,操作简便快捷.
  • 在EXCEL表内遇到有规律性的数据需要提取或者替换时,比如在数据中提取时间,身份证号码等,EXCEL内自带的查找替换就难以实现,我们可以利用VBA适用正则表达式去对数据进行匹配。 什么是正则表达式? 正则表达式,...
  • 批量替换CAD中的文字

    2019-04-26 15:46:22
    可以一次性修改多个文件中的文字, 程序采用基于AutoCAD的VBA编写,能够批量替换多个文件中的相同文本。免费软件,无任何功能和时间上的限制。
  • 想实现题号的标注,就像这样的方式,通过搜索每一行的开头,如果满足“数字+.”的形式,就把它标红 。 ``` ...到第十题就会出现问题,她会把表格中的数字和标点 查找到。 不知道问题出在哪里了?
  • 功能简介:同时进行多个查找替换,支持非通配符下的特殊字符的替换。 比如,适用于 ISO 文件,因组织机构调整,对所有原有部门一次输入后替换为新部门。 查找的各个内容之间,用英文逗号分隔(","),查找数量不限...
  • VBA查找并选定文字

    千次阅读 2017-09-14 17:39:00
    Replacement 对象的属性和方法对应于“查找替换”对话框中的选项(单击“编辑”菜单中的“查找”或“替换”命令可显示该对话框)。 可通过 Find 对象使用 Replacement 对象。下列示例将所有单词“hi”替换为...
  • 1,在下边sheet1右键->查看代码,第一个下拉框选择worksheet,第二个下拉框选择BeforeDoubleClick; 2,出现4行代码,在Worksheet_BeforeDoubleClick中输入: ...4,最后打开xlsm格式文件,双击鼠标就可以批量替换了。
  • from: ... 原来的WORD文档内容是这样的: 1、硬盘出厂后必须经过格式化才能使用。...有两个空以上的话,中间会有右左括号)(,这时可以使用替换功能把)(替换为、即可,可者有兴趣的话在代码里加一段替换也可以哦!  
  • 由于商品目录升级,现商品编码中以“GXGY”的所有记录统一更换为“GXGYA”,该如何通过VBA批量实现? 商品编码 替换结果 GXGY023 GXGYA023 GXGY024 GXGYA024 QDJC022 QDJC022 qdjc023 qdjc...
  • EXCEL多文件查找替换是由金浚软件工作室推出的一款excel多文件查找替换软件,本软件可同时对指定文件夹中的多个excel工作簿文件批量进行查找内容并替换,绿色小巧,批量操作,省时省力,需要的朋友欢迎前来下载使用...
  • 代码比较简单,只是在替换的基础上增加了最基础的For循环,有效节省了批量替换文本的时间。 废话不多说,直接上代码, Ori = Array("a","b","c") '被替换文本 Rep = Array("a&...
  • vba关于查找方法(Find方法)的应用(一)

    万次阅读 2018-05-04 17:36:00
    [VBA]关于查找方法(Find方法)的应用(一)fanjy 发表于 2006-9-28 20:14:00 excelhome 在Excel中,选择菜单“编辑”——“查找(F)…”命令或者按“Ctrl+F”组合键,将弹出如下图01所示的“查找替换”对话框。在...
  • 适用于: Word 2016, Word 2013, Word 2010, Word Online, Word Starter, Word Starter 2010 重要: 本文是由机器翻译的,请参阅免责声明。...您可以搜索和替换文本、 图像、 标题、 书签、 或某些类型的格式,如段落
  • 利用Excel查找替换Word文本框里的内容
  • 用Excel的VBA实现文本匹配与替换

    千次阅读 2011-09-21 15:22:00
    在工作的过程中,有时候为了批量处理Excel,不可避免会写一些VBA小程序,而在规范数据格式方面,经常会用正则表达式: 以下是我自己经常会用到的小程序: 一、文本匹配 Function bTest(ByVal s As String, ...
  • 利用VBA可以轻松地将某文件夹下的所以WORD文档中的某个字符串全部替换为其他字符串。下面是具体操作步骤。  第一,首先将需要批量替换的多个Word文档放在同一文件夹下面。  第二,新建一空白Word文档,右击空白...
  • 对应于“查找替换”对话框中,“单元格匹配”复选框。   案例:根据工作表名称查找标题栏中的对应标题的单元格 源表:   VBA语句:   Option Explicit Option Compare Text Sub 根据内容查找...
  • 做统计时,为了将文本更清晰的展示在excel表格中,可以将在文本中定义某“分隔符”,然后通过该方法进行查找替换。 需要复制B1单元格,粘贴到C1单元格,选择“值”,则可以出现最后的换行效果 ...
  • 在使用Word过程中,若是掌握一些批量技巧,可以让你工作效率翻番,本期Word妹与大家分享几个超级...2、批量对齐名字选中文本,按Ctrl+H打开查找替换对话框,在查找中输入代码:?>,并且勾选使用通配符,之后...
  • 在使用Word过程中,若是掌握一些批量技巧,可以让你工作效率翻番,本期Word妹与大家分享几个超级...2、批量对齐名字选中文本,按Ctrl+H打开查找替换对话框,在查找中输入代码:?>,并且勾选使用通配符,之后...
  • 运行本程序后,先输入需查找和与之对应的替换文本,然后点击“选择文件夹”,您可以找到指定的文件夹中的部分或者所有文件,注意,您需要全选文件(CTRL+A),或者使用 SHIFT/CTRL 配合鼠标键选取多个文件),...
  • excel操作word,替换文本

    千次阅读 2019-09-12 11:52:43
    2.利用word vba查找替换功能替换word文本中文字。 '打开模板文件 Set objApp = CreateObject("Word.Application") objApp.Visible = True Set objDoc = objApp.Documents.Open(strTemplates, , ...
  • 叠字主要包括以下几种: 1型aabbcc 2型ababab 3型abcabcabc 4型abcdabcdabcdabcd(这个算思考题,...Sub 替换文本() '替换文本 Orit = Array("(&lt;[!^13]*^13)(*)\1", "(&lt;[!^13]*^13...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,509
精华内容 603
关键字:

vba文本查找替换