乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 43|回复: 2

求教根据内容 修改字体的问题

[复制链接]

2

主题

6

帖子

1

银币

初来乍到

Rank: 1

铜币
14
发表于 2011-7-3 12:34:00 | 显示全部楼层 |阅读模式
我初学VBA  看看书 试着编写了下面这段代码 主要功能就是打开CAD文件后  选择所有文字 然后根据文字的内容 修改其属性
         ThisDrawing.Application.Documents.Open dwgfile
         Dim styel1 As AcadTextStyle
         Dim fontset As Object
         On Error GoTo errcontrol
         Dim sname As String
         
        Set fontset = ThisDrawing.SelectionSets.Add("example")
         Dim ftype(0) As Integer
         Dim fdata(0) As Variant
         ftype(0) = 0
         fdata(0) = "text"
         fontset.Select acSelectionSetAll, , , ftype, fdata
        
         Dim sfont As object
         For Each sfont In fontset
        ‘下面这句  如果替换成sfont.height = 10   整个程序就能正常运行
         If sfont.TextString = "你好中国" Then   
         sname = sfont.StyleName
         Set style1 = ThisDrawing.TextStyles.Item(sname)
         ThisDrawing.ActiveTextStyle = style1
          sfont.StyleName = "stardand"
         ThisDrawing.ActiveTextStyle.fontFile = "E:\Program Files\ Map 3D 2010\Fonts\FZYTK.TTF"
         
         Else
         sname = sfont.StyleName
         Set style1 = ThisDrawing.TextStyles.Item(sname)
         ThisDrawing.ActiveTextStyle = style1
         sfont.StyleName = "legend"
         ThisDrawing.ActiveTextStyle.fontFile = "E:\Program Files\AutoCAD Map 3D 2010\Fonts\SIMLI.TTF"
                 
        End If
        sfont.Update
         Next sfont
        ThisDrawing.SelectionSets("example").Delete
        ThisDrawing.Regen acAllViewports
        Unload Me
errcontrol:
        ThisDrawing.Regen acAllViewports
        
        ThisDrawing.Save
由于初学  代码写的肯定存在不少问题   请大侠们不吝赐教   发现问题了就教教我  不光关键代码 其他地方也算  如果可以写的更精简些  那就更好了 呵呵!  
非常感谢!
回复

使用道具 举报

25

主题

219

帖子

6

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
319
发表于 2011-7-3 15:59:00 | 显示全部楼层
StrComp(string1,string2[,compare]) 返回string1字符串与string2字符串的比较结果,如果两个字符串相同,则返回0,如果小于则返回-1,如果大于则返回1
回复

使用道具 举报

2

主题

6

帖子

1

银币

初来乍到

Rank: 1

铜币
14
发表于 2011-7-3 19:10:00 | 显示全部楼层
请问  为什么不能用 等于  
还有程序别的地方还有什么问题么? 或者哪些代码是多余的
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-6-30 23:22 , Processed in 0.356750 second(s), 59 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表