Sub aaa() Ori = Array("a", "b", "c") '被替换文本 Rep = Array("aa", "bb", "cc") '替换后的文本 For i = 0 To UBound(Ori) 'MsgBox Ori(i) With Selection.Find .Text = Ori(i) .Forward = True .Wrap = wdFindCont...
Sub CommandButton1_Click()Application.ScreenUpdating = False '关闭屏幕闪Dim myFile$, myPath$, i%, myDoc As Object, myAPP As Object, txt$, Re_txt$Set myAPP = New Word.ApplicationWith Application.FileDialog(msoFileDialogFolderPicker) '允许用户选择一个文件夹.Title = "选择目标文件夹" If .Show = -1 Then myPat...
1.Find对象该对象代表查找操作的执行条件,其属性、方法和“替换”对话框中选项一致,具体如下所述:(1)Font属性该属性由于返回或设置Font对象,代表指定对象的字符格式。(2)Wrap属性该属性用于设置在搜索时进行的相关操作,可通过常量进行赋值,具体如下所述:A、wdFindAsk常量:搜索完毕后,显示是否搜索文档的其他部分的消息框。B、wdFindContinue常量:搜索完毕后,继续执行。C、wdFindStop常量:搜索完毕后,停止执行。(3)Format属性该属性用于设置是否在查找操作中包含格式。(4)MatchCase属性该属性用于设置在查找时是否区分大、小写。(5)Ma...
Sub MReplacement() Selection.Find.ClearFormatting Selection.Find.Replacement.ClearFormatting With Selection.Find .Text = "txt文本" .Replacement.Text = "www.txttool.com" .Forward = True .Wrap = wdFindAsk .Format = False .MatchCase = False .MatchWholeWord...
笔者最近在做一个数据库项目,其中需要从EXCEL中提取关键字段。提取内容如下图所示,需要将图中加粗部分单独提出后进行去噪处理。如果通过word处理,文字量小的时候尚可实现,但几十万字的处理量很容易就造成假死。因此采用了EXCEL进行数据处理。在这里插入图片描述代码如下:功能是将B列中的数据筛选后存入C列Sub 提取内容()Dim searchtextDim textlongDim str_startDim str_endFor i = 1 To 2000searchtext = Worksheets("sheet1").Range("B" & i).Valuetextlong = Len...
叠字主要包括以下几种:1型aabbcc2型ababab3型abcabcabc4型abcdabcdabcdabcd(这个算思考题,自己根据原理增加吧)代码原理为通过自建数组和通配符替换逐一替换,无需引入其他数据库,运行速度还可以。代码如下:Sub 替换文本() '替换前文本 Orit = Array("(<[!^13]^13)()\1", "(<[!^13]^13)()\1", "(<[!^13]^13)()\1", _"([!1-^127]){3}", "([!1-^127]){2}", _ "([!^13]){4}&q...
Word VBA排版去除空白段落Sub 删除空白段落()For Each para In ActiveDocument.Paragraphs If Right(para.Range.Text, 2) <> "。" & Chr(13) Then para.Range.Characters.Last.Delete NextEnd Sub
在提取数据时,会遇到具有相似格式的内容,例如同一个word文档中出现了“(C01B35/06优先)”、(C01C11/00优先),(C01C18/00优先)……等,其存在相似的通配符格式,即"\(*优先\)",但如果直接全部替换,又有可能误删数据。必须先将所有符合这种格式的数据找出后形成数组,然后进行批量替换,如果手动录入会非常麻烦,那么可以用到下述代码。以下以字符长度L为第二判别条件实现降噪,将需要删除的数据直接筛出,然后进行批量替换先通过for循环和With Selection.Find 将带有上述格式的,且字符长度<=20的全部数据存储在a(0 to 1000)中。然后在以赋...
在做数据筛选时,会要求提取带有特定关键词的短句。楼主比较懒,代码只提供了提取关键词短句的部分,并未加入重复检测功能待提取的word文档格式如下:(关键词为XX)aaaxxaabbbxxbbsssssccccxxccsddssfsdfsdfsdfxxdddd以下代码能够实现批量提取出word文档内的带有关键词的数据Sub 提取内容()Dim temp_text, text_output As String i = 0 Do With Selection.find .Text = "需要搜索的关键词" .Forward = True .Wrap =...
1 VBA中的字符串2 VBA中处理字符串的函数2.1 比较字符串 2.2 转换字符串 2.3 创建字符串 2.4 获取字符串的长度 2.5 格式化字符串 2.6 查找字符串 2.7 提取字符/字符串 2.8 删除空格 2.9 返回字符代码 2.10 返回数值代表的相应字符 2.11 使用字节的函数 2.12 返回数组的函数 2.13 连接字符串 2.14 替换字符串 2.15 反向字符串-VBA中的字符串VBA不仅可以处理数字,也可以处理文本(字符串)。VBA提供了两类字符串:一类为固定长度的字符串,声明时包含指字的字符数。例如,下面的语句Dim strFixedLong As Str...
使用前,需要在word内插入一个textbox1和一个commandbutton1,然后去掉文档中的标点符号。笔者比较懒,未加入剔除标点的代码。理论上下述代码可以统计999个字符(含标点)的文本,如需增加文本数量,则只需要增加数组体积即可。代码只是通过比较简单的for ,do循环实现,没啥技术含量哈。Sub Button1_click()'统计词频 Dim input_word As String Dim input_word_part(1 To 9999) As String Dim output_word_part(1 To 9999) As String Dim temp_inpu...