以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  WORD vba问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=81578)

--  作者:wh420
--  发布时间:2016/3/1 16:02:00
--  WORD vba问题
我想把以下代码嵌入到狐表中,在这之前在WORD 的VBA中做测试结果总是报错,烦请老师帮忙看看
Sub 删除俄文()
    Application.ScreenUpdating = False
    With ActiveDocument.Content.Find
        .Text = "[" & ChrW(1025) & "-" & ChrW(1257) & "]"
        .MatchWildcards = True \'如果要查找的文本包含通配符

        Do While .Execute \'运行指定的查找操作。如果查找成功,则返回 True
            With .Parent \'返回对象
                .Expand wdParagraph \'扩展到整个段
                If .Text Like "*[一-龥]*" = False Then
               \'If .Text Like "*[" & ChrW(19968) & "-" & ChrW(40869) & "]*" = False Then
               .Delete ’此行总报错:range不可编辑
                Else
                .Collapse wdCollapseEnd
                End If
            End With
        Loop
    End With
    Application.ScreenUpdating = True
End Sub


此主题相关图片如下:qq截图20160301153721.jpg
按此在新窗口浏览图片
 下载信息  [文件大小:   下载次数: ]
点击浏览该文件:test.rar




--  作者:大红袍
--  发布时间:2016/3/1 16:12:00
--  

Sub 删除俄文()
\'
\' 删除俄文 宏
\'
\'
Application.ScreenUpdating = False
    With ActiveDocument.Content.Find
        .Text = "[" & ChrW(1025) & "-" & ChrW(1257) & "]"
        .MatchWildcards = True \'如果要查找的文本包含通配符


        Do While .Execute \'运行指定的查找操作。如果查找成功,则返回 True
            With .Parent \'返回对象
                .Expand wdParagraph \'扩展到整个段
                If .Text Like "*[一-龥]*" = False Then
               \'If .Text Like "*[" & ChrW(19968) & "-" & ChrW(40869) & "]*" = False Then
               .Text = ""
                Else
                .Collapse wdCollapseEnd
                End If
            End With
        Loop
    End With
    Application.ScreenUpdating = True

End Sub


--  作者:大红袍
--  发布时间:2016/3/1 16:17:00
--  

foxtable操作word查找的例子,可以参考

 

http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=70797&skin=0

 


--  作者:wh420
--  发布时间:2016/3/1 16:25:00
--  
非常感谢,大红袍老师,问题解决。
--  作者:wh420
--  发布时间:2016/3/1 16:26:00
--  
可是不太明白,为啥.delete就不行呢?
--  作者:大红袍
--  发布时间:2016/3/1 16:59:00
--  

对vba不太熟悉,能运行就好。应该是find的状态下不能编辑delete


--  作者:wh420
--  发布时间:2016/3/1 17:04:00
--  
好吧,再次感谢。另外再请教一个问题我想知道[" & ChrW(1025) & "-" & ChrW(1257) & "]这句是表示所有的俄语字符,如果我想要所有英语或所有西班牙语的字符应该找哪些资料?
--  作者:大红袍
--  发布时间:2016/3/1 17:32:00
--  

看看

 

http://www.doc88.com/p-801578373970.html