乐筑天下

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

如何提取块中的数字

[复制链接]

4

主题

12

帖子

3

银币

初来乍到

Rank: 1

铜币
28
发表于 2009-1-6 09:30:00 | 显示全部楼层 |阅读模式
如图所示,图右边为要提取的文字,为块参照
我要提取 标记为H 的数字,其中有 提示H0的为整数部分。我的代码如下:
For Each ent In ssetObj
If StrComp(ent.ObjectName, "AcDbBlockReference", 1) = 0 Then
RetVal = ent.GetAttributes
    For i = LBound(RetVal) To UBound(RetVal)
        If UCase(RetVal(i).TagString) = TextBox1.text Then
                 a = RetVal(i).textstring
               coorpoint = RetVal(i).insertionpoint
        End If
         If UCase(RetVal(i).PromptString) = TextBox2.text Then
          b = RetVal(i).textstring
                  End If
    Next
coorpoint(2) = b + a / 10
End If
上面的textbox1.text 可以输入为标记名称,TextBox2.text 作为输入 提示 名称
以上代码好像只能提取小数部分,整数部分不能提取出来。
请各位高手解答!!不胜感激

luk4bqa4ykc.GIF

luk4bqa4ykc.GIF

回复

使用道具 举报

4

主题

12

帖子

3

银币

初来乍到

Rank: 1

铜币
28
发表于 2009-1-6 15:11:00 | 显示全部楼层
研究半天,自己解决。程序如下,不必输入标记和提示名称了,数据提取成功。就是不知道能否通用。各位有什么更好的方法啊
If i = LBound(RetVal) Then
            a = RetVal(i).textstring
            Else
            If i = 1 Then
            b = RetVal(i).textstring
            End If
            End If
            coorpoint = RetVal(i).insertionpoint
    Next i
  
coorpoint(2) = a + b / 10
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-7-4 19:43 , Processed in 0.850659 second(s), 70 queries .

© 2020-2025 乐筑天下

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