明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 5526|回复: 6

如何用VBA编写查找替换

[复制链接]
发表于 2002-10-26 13:55:00 | 显示全部楼层 |阅读模式
在CAD中有_find命令,能实现查找替换,请问高手,如何用VBA程序实现这一功能。如将图形中的文字2全部替换为12。谢谢。
发表于 2002-10-26 14:23:00 | 显示全部楼层

Re:如何用VBA编写查找替换

函数如下:
OldText-要查找的文字
NewText-替换文字
Sub ReplaceText(ByVal OldText As String, ByVal NewText As String)
    Dim EntObj As AcadEntity
   
    On Error GoTo ErrTrap
    For Each EntObj In ThisDrawing.ModelSpace
        If StrComp(EntObj.ObjectName, "AcDbText", vbTextCompare) = 0 _
            Or StrComp(EntObj.ObjectName, "AcDbMText", vbTextCompare) = 0 Then
                If StrComp(EntObj.TextString, OldText, vbTextCompare) = 0 Then
                    EntObj.TextString = NewText
                End If
        End If
    Next
    Set EntObj = Nothing
    Exit Sub
   
ErrTrap:
    If Not (EntObj Is Nothing) Then Set EntObj = Nothing
    On Error GoTo 0
End Sub

调用方法如下:
Sub Main()
    ReplaceText "2", "12"
End Sub
 楼主| 发表于 2002-10-26 18:00:00 | 显示全部楼层

thank you.

thank you.
发表于 2010-5-18 16:44:00 | 显示全部楼层
灰常感谢,学习中呢
发表于 2010-7-31 14:49:00 | 显示全部楼层
非常感谢伊凡的代码,离我引用EXCEL数据自动替换不远了
发表于 2010-8-12 13:59:00 | 显示全部楼层
谢谢 学习哈
发表于 2010-8-12 20:17:00 | 显示全部楼层
学习了,进步了,提高了,感谢啊!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-25 22:32 , Processed in 0.173922 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表