明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 895|回复: 7

在线的朋友帮我,求求你们,我要统计上千个这样的数据

[复制链接]
发表于 2008-6-3 09:43 | 显示全部楼层 |阅读模式
提示: 作者被禁止或删除 内容自动屏蔽
"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2008-6-3 11:07 | 显示全部楼层

将"面积="换成"L="就可以了,

用subst后,再用entmod更新

 楼主| 发表于 2008-6-3 11:14 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
发表于 2008-6-3 11:22 | 显示全部楼层
;(长度统计程序)本程序可以计算以L=打头的数字之和
;author feng_tan    feng_tan@21cn.com
(vl-load-com)
(Defun c:gc ( / fil len n sum e ed et ln tzb sm sumst)
 (command "redraw")
;(initget 1 "T W")
(setq fil (ssget))
(setq len (sslength fil))
(setq n 0)
(setq sum 0)
(while (<= n (1- len))
   (setq e (ssname fil n))
   (if (= "TEXT" (cdr (assoc 0 (setq ed (entget e)))))    ;3
     (progn
  (setq et (cdr (assoc 1 (setq ed (entget e))))) ;********
  (if (wcmatch et "*面积=*平方米*")
    (progn
      (setq ln(+ 6 (vl-string-search "面积=" et)))
      (setq sm(substr et ln (- (vl-string-search "平方米" et) ln)))
      (setq sum (+ sum (atof sm)))      
    )
  )
)
)
(setq n (1+ n))
)
(setq sumst (rtos sum 2))
(princ (strcat "\n\n\t\t 面积= " sumst))
(princ)
)
;;不知道到底是不是你想要,,,,,,,
 楼主| 发表于 2008-6-3 11:31 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
发表于 2008-6-3 11:41 | 显示全部楼层
;(长度统计程序)本程序可以计算以L=打头的数字之和
;author feng_tan    feng_tan@21cn.com
(vl-load-com)
(Defun c:gc ( / fil len n sum e ed et ln tzb sm sumst)
 (command "redraw")
;(initget 1 "T W")
(setq fil (ssget))
(setq len (sslength fil))
(setq n 0)
(setq sum 0)
(while (<= n (1- len))
   (setq e (ssname fil n))
   (if (= "TEXT" (cdr (assoc 0 (setq ed (entget e)))))    ;3
     (progn
  (setq et (cdr (assoc 1 (setq ed (entget e))))) ;********
  (if (wcmatch et "*面积=*")
    (progn
      (setq ln(+ 6 (vl-string-search "面积=" et)))
      (setq sm(substr et ln))
      (setq sum (+ sum (atof sm)))
    )
  )
)
)
(setq n (1+ n))
)
(setq sumst (rtos sum 2))
(princ (strcat "\n\n\t\t 面积= " sumst))
(princ)
)
发表于 2008-6-3 11:47 | 显示全部楼层
(vl-load-com)
(Defun c:gc (/ fil len n sum e ed et ln tzb sm sumst)
  (command "redraw")
     ;(initget 1 "T W")
  (setq fil (ssget))
  (setq len (sslength fil))
  (setq n 0)
  (setq sum 0)
  (while (<= n (1- len))
    (setq e (ssname fil n))
    (if (= "TEXT" (cdr (assoc 0 (setq ed (entget e))))) ;3
      (progn
 (setq et (cdr (assoc 1 (setq ed (entget e))))) ;********
 (if (wcmatch et "*面积=*平方米*")
   (progn
     (setq ln (+ 6 (vl-string-search "面积=" et)))
     (setq
       sm (substr et ln (- (vl-string-search "平方米" et) ln))
     )
   )
   (setq sm et)
 )
 (setq sum (+ sum (atof sm)))
      )
    )
    (setq n (1+ n))
  )
  (setq sumst (rtos sum 2))
  (princ (strcat "\n\n\t\t 面积= " sumst))
  (princ)
)
 楼主| 发表于 2008-6-3 11:59 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-5-17 10:29 , Processed in 0.221158 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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