CAD中文字查找替换功能如何用VBA实现

作者&投稿:鄣顷 (若有异议请与网页底部的电邮联系)
cad 如何用vba实现修改图纸中的文字?谢谢啦高手们~

;;;修改文字内容(defun C:ZX10 ( / #k1 %k2 %k3 %k4 %k5 %k6 %k7 &k1 &kw1 i) (setvar "cmdecho" 0) (setvar "blipmode" 0) (princ "
请选择文字") (setq &kw1 (ssget ":S" (list (cons 0 "TEXT"))) %k2 t);选择文字 (if (/= &kw1 nil);如果有选择 (progn (while %k2;循环修改 (setq %k2 (ZX10~1));取得要修改的文字代码 (if (/= %k2 nil);如果选择了 (progn (setq %k3 (ZX10~2));那么取得要修改的内容 (if (= %k3 nil) (setq %k2 nil) );如果没有取得内容就结束 ) ) (if (/= %k3 nil);如果符合以上条件 (progn (setq i 0 %k3 (cons 1 %k3));修改内容变为表里面的元素 (repeat (sslength &kw1);对所有的文字进行查看 (setq &k1 (ssname &kw1 i);取得一个对象 #k1 (entget &k1);取得属性列表 %k4 (assoc 1 #k1);取得内容元素 %k6 (assoc 40 #k1);取得高度元素 %k7 (cons 40 150);修改高度元素 %k5 (cdr %k4);取得文字内容 ) (if (= %k2 %k5);如果文字内容符合 (progn (setq #k1 (subst %k3 %k4 #k1));替换文字内容 (setq #k1 (subst %k7 %k6 #k1));替换高度 (entmod #k1);刷新文字 ) ) (setq i (+ i 1));下一个 ) ) ) ) ) ) (prin1));;子程序;;(defun ZX10~1 ( / %k1 &kw2) (setq %k1 nil) (princ "
请选择要修改的文字内容") (setq &kw2 (ssget ":S" (list (cons 0 "TEXT")))) (if (/= &kw2 nil) (progn (setq %k1 (cdr (assoc 1 (entget (ssname &kw2 0))))) (princ "
选择文字为") (princ %k1) ) ) %k1);;;子程序;;(defun ZX10~2 ( / %k1 &kw2) (setq %k1 nil) (princ "
请选择要替换的内容") (setq &kw2 (ssget ":S" (list (cons 0 "TEXT")))) (if (/= &kw2 nil) (progn (setq %k1 (cdr (assoc 1 (entget (ssname &kw2 0))))) (princ "
修改内容为") (princ %k1) ) ) %k1);内容复制到记事本,以【ZX10.lsp】命名,加载到autoLISP,命令:ZX10操作过程:首先框选需要修改的文字;然后点选需要修改的文字得到内容,然后点选需要修改的内容【文字】;autoLISP程序。

CAD2013中,有宏动作编辑,很容易实现你的要求。


这是很简单的编辑。在动作命名的时候要简单一些,因为它是快捷键名称,如Z8560,不要象下面的ACTMACRO001这么长。要统计数字,你快速选择一下,它自动出来了。

如上图,图案填充有46个。想看操作,你可以加我QQ437271963

基本是这样子的
dim strDwgName As String
dim strFind As String
dim strReplace As String
Dim ent As AcadEntity
For Each ent In Thisdrawing.ModelSpace
If TypeOf ent Is AcadText Or TypeOf ent Is AcadMText Then
With ent
If InStr(.TextString, strFind) Then .TextString = ReplaceStr(.TextString, strFind, strReplace, False)
End With
End If
Next ent

补充:你那个不能改的标题栏可能是插入的属性块,是属性块里面的属性的文字,这个不能进入块中修改,只能在对象中。

strFind = "耳板"
Dim objBlkRef As AcadBlockReference
Dim varAttributes '取得块属性,显示属性标签和值

For Each ent In ThisDrawing.ModelSpace
If TypeOf ent Is AcadBlockReference Then
Set objBlkRef = ent
varAttributes = objBlkRef.GetAttributes
If UBound(varAttributes) Then
For i = 0 To UBound(varAttributes)
If varAttributes(i).TextString = strFind Then
varAttributes(i).TextString = "strFind"
End If
Next i
End If

End If
Next ent

这样可以替换块中的文字

应该对块内,表内的文字再遍历一次修改就可以了。

哎呀,看到这个问题真实亲切啊,想当年我第一个公司就是做这个的,哈哈,现在好久没听别人提过了,不过我也不会,嘿嘿,早忘没了


ad怎么调中文ad怎么设置中文
1 首先需要打开Adobe软件,如Photoshop,Illustrator等。2 进入“编辑”菜单,在“首选项”中选择“类型”选项。3 在“类型”选项中,可以选择“中文(CJK)”作为主要字体,并调整其他相关选项。4 对于不同的软件和版本,可能会有些许差别,需要根据具体情况进行调整。内容延伸:如果调整后仍然无法显示中文,...

如何将altium designer 里的中文字体怎样翻转?
双击该字,在弹出的选项中勾选mirror即可

ad的字体库在哪个文件夹
1首先右键点击桌面上的cad软件,然后点击属性。2、接着在属性页面点击选项卡中的快捷方式,点击下方的打开文件所在位置,进入cad安装文件夹所在位置。3、在文件夹中到fronts文件夹点击进入就能看到所有的字体文件。文件夹是用来组织和管理磁盘文件的一种数据结构。

ad字符串怎么打中文
1、点击菜单栏中“DXP”→“Preferences”。2、在弹出的菜单栏中通过“System”→“General”→“Localization”勾选“Uselocalizedresources”。点击“Apply”及“OK”。

为什么ad中文字打不出来?
1、如果你是CAD开的图纸建议用天正开图纸看一下,建议用高点版本T20 V3.0(低版本开高版本的图纸是显示不完全的),如果是别人传过来的图纸,建议让对方转成T3格式,这样无论你这边是什么版本基本都能看得到全部内容,但是T3格式有弊端会导致某些图层错层 2、楼主在开图纸时候是否有提醒字体替换,如有...

AD修改字体号快捷键
AD修改字体号快捷键:shift+C。ad的第一层意思是广告,也是我们最常见的,比如某某公司开展了一种活动,吸引人们来购买,通常会在里面加上ad等字眼。它其实是advertisement的缩写形式。如果我们看到后者的话,还是同一个意思。ad的第二层意思是一种病,即阿尔茨海默病,就是老年痴呆,缩写形式就是AD。a...

AD20封装名称不显示中文
具体操作步骤如下:1.打开软件后,点击左上角的【DXP】→【Preferences(优先选项)】,弹出【Preferences】设置窗口。2.然后选择【System】→【General】命令→选择【System F(系统文字)】。3.点击 Change 选择一种中文字体,如宋体(注意:你所需要导出的PDF文件中所有的中文字体都要一致为你所设置的字体...

请问如何在adtium designer 的pcb文件中批量修改元件的text,我的目的是...
altium的功能有个查找全部text,然后统一修改!具体用find similar object查找到所以text属性的字体,然后在inspenctor面板统一修改为hide,即隐藏;希望对你有用处;

ad替换模板为什么字会重叠
Altium Designer(AD20) v20.0.13 中文免费授权版(附激活文件+安装教程)类型:机械电子大小:2.33GB语言:简体中文时间:2020-07-24查看详情 进入原理图界面,点击左上角的DXP--prefeences,如下图所示 属性面板中点击Schematic选项卡,如下图所示 Schematic选项中点击general,将Render Text with GDI+...

ad字幕为什么没有显示
ad字幕没有显示是因为对中文支持不好。ad很多时候会出现汉字丢失或者乱码的现象,转换成pdf或者其他形式的时候汉字也会丢失。所以ad字幕没有显示因为对中文支持不好。

东坡区17717177785: CAD中文字查找替换功能如何用VBA实现 -
官待再造: 基本是这样子的 dim strDwgName As String dim strFind As String dim strReplace As String Dim ent As AcadEntity For Each ent In Thisdrawing.ModelSpace If TypeOf ent Is AcadText Or TypeOf ent Is AcadMText Then With ent If InStr(.TextString, ...

东坡区17717177785: 在CAD中如何编写VBA程序批量替换CAD里标注的尺寸(文字替代里的文字) -
官待再造: 如果修改文字,可以用FIND命令,类似word中的查找替换,不限于引线标注,如果是文字、多行文字、尺寸标注、表格、属性之类有文字特性的对象,只要在选集中,就会有相应修改;如果是天正生成的对象,FIND命令可能找不到,要用CZTH命令,用法类似.

东坡区17717177785: 如何使用VB或者VBA替换Auto CAD中尺寸标注中的文字,求代码,求好心人帮帮忙,无财富值,暂时无法悬赏. -
官待再造: protocol StructDecoder { // 我们 Core Data 实体的名字 static var EntityName: String { get } // 返回包含我们属性集的 NSManagedObject func toCoreData(context: NSManagedObjectContext) throws -> NSManagedObject //[译者注]使用 NSManagedObjectContext 需要 import CoreData }

东坡区17717177785: 用VB实现文本查找和替换 -
官待再造: Private Sub cmdExit_Click() End End Sub Private Sub cmdFind_Click() Dim StrCz As String, StrTh As String, I As Integer, J As Integer, K As Integer StrCz = InputBox("你要查找什么?", "查找", "上海市") StrTh = InputBox("你要将...

东坡区17717177785: VB中如何实现文本查找功能? -
官待再造: 在VB中要实现查找文件功能,我们可以利用VB的DIR函数进行递归来实现.每次使用DIR函数后,比较是否有要查找的文件,再检查是否有子目录,若有,利用递归继续查找,这样可对整个盘进行查找...

东坡区17717177785: 如何在VB中实现文本中的查找 -
官待再造: For P = 1 To Len(MainForm.TextBox.Text)Tmp = Mid(MainForm.TextBox.Text, P, L)If SHT = Tmp ThenMainForm.TextBox.SelStart = P - 1MainForm.TextBox.SelLength = LMainForm.TextBox.SetFocusExit ForEnd If Next

东坡区17717177785: 怎样查找替换CAD图纸中的文字? -
官待再造: 你好 如果你现在的文字内容都是属于矢量的可编辑的文字内容时 点菜单栏上面的 编辑 查找 在查找字符串里输入原有的字符 然后在下方的改为里边输入自己想要换成的内容 在右边的搜索范围那就点最右上角的那个 选择对象 按钮 然后拖选你要查找和替换的范围 下面再点一下 全部改为 关闭 那样就全部替换了 很多情况下我都是这么操作的 很方便 祝你成功 望采纳

东坡区17717177785: VB中如何查找替换字符 -
官待再造: 估计没有语法报错,就是没结果,是不是标点有问题?b = b & Replace(a, ",", "") & vbCrLf ' 替换并放入变量 这句替换两次:tmp=Replace(a, ",", "") tmp=Replace(tmp, ",", "") '替换中文逗号 b = b & tmp & vbCrLf 注意最后一个vbCrLf要去掉,要不你每写一次文件,就会在后头多一个回车换行符:b= Left(b,len(b)-2) 你没说清具体情况,我估计是如此了....

东坡区17717177785: cad 如何用vba实现修改图纸中的文字?谢谢啦高手们 -
官待再造: ;;;修改文字内容(defun C:ZX10 ( / #k1 %k2 %k3 %k4 %k5 %k6 %k7 &k1 &kw1 i) (setvar "cmdecho" 0) (setvar "blipmode" 0) (princ "\n请选择文字") (setq &kw1 (ssget ":S" (list (cons 0 "TEXT"))) %k2 t);选择文字 (if (/= &...

东坡区17717177785: 关于CAD中的查找功能 -
官待再造: CAD查找功能用法:1、例如图上一些文字,想将1235内容改为abcd内容,那就可以使用查找里的替换功能来实现,不需要手动修改文字了.2、 点击编辑,下拉有个查找,点击查找,出现对话框.先熟悉一下对话框的内容,有查找内容,替换内容,下面是提示栏,右边是选项按钮.3、 查找内容输入1235,替换内容输入abcd,选择整个图形,点击全部改为,然后下面有提示说已经全部修改.再关闭对话框,看到图里的文字已经被替换了.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网