导出属性(“测量值
大家好我有以下问题:
我想导出对齐维度的属性(即“测量”)
走向卓越
当我单击选择对齐尺寸并输入(单击)时,
对齐尺寸的属性(即“测量”,例如:45,48,78…)
将导出到excel。
帮帮我,谢谢!
(有一个附加文件(help.docx))
帮助docx文件 查看DATAEXTRACTION命令。 试试这个程序
;;----------------------------ALDIMTXL.LSP-------------------------------;;
;; fixo (02012 * all rights released
;; 3/1/12
(defun C:ALDIMTXL (/ *error* col data dm elist en fname row sset xlapp xlbook xlbooks xlcells xlsheet xlsheets)
(defun *error* (msg)
(if
(vl-position
msg
'("console break"
"Function cancelled"
"quit / exit abort"
)
)
(princ "Error!")
(princ msg)
)
(princ)
)
;;;local defun
(defun setcelltext(cells row column value)
(vl-catch-all-apply
'vlax-put-property
(list cells 'Item row column
(vlax-make-variant
(vl-princ-to-string value) ))
)
;;; main part
(if (setq sset (ssget (list (cons 0 "dimension"))))
(progn
(while (setq en (ssname sset 0))
(setq elist (entget en))
(if (member "AcDbAlignedDimension" (mapcar 'cdr elist))
(progn
(if (eq "" (cdr (assoc 1 elist)))
(setq dm (rtos (cdr (assoc 42 elist)) 2 (getvar "dimdec")))
(setq dm (cdr (assoc 1 elist)))
)
(setq data (cons dm data))
)
)
(ssdel en sset)
)
(alert "Wait...")
(setq xlapp (vlax-get-or-create-object "Excel.Application")
xlbooks (vlax-get-property xlapp 'Workbooks)
xlbook (vlax-invoke-method xlbooks 'Add)
xlsheets (vlax-get-property xlbook 'Sheets)
xlsheet (vlax-get-property xlsheets 'Item 1)
xlcells (vlax-get-property xlsheet 'Cells)
)
(vla-put-visible xlapp :vlax-true)
(setq row 1)
(setq col 1)
(foreach dim data
(setcelltext xlcells row col dim)
(setq row (1+ row)
)
)
)
)
(vlax-invoke-method
(vlax-get-property xlsheet 'Columns)
'AutoFit)
(setq fname (strcat (getvar "dwgprefix")(vl-string-right-trim ".dwg" (getvar "dwgname")) ".xlsx"))
(vlax-invoke-method
xlbook
'SaveAs
fname
nil
nil
nil
:vlax-false
:vlax-false
1
2
)
(vlax-invoke-method
xlbook 'Close)
(vlax-invoke-method
xlapp 'Quit)
(mapcar '(lambda (x)
(vl-catch-all-apply
'(lambda ()
(vlax-release-object x)
)
)
)
(list xlcells xlsheet xlsheets xlbook xlbooks xlapp)
)
(setq xlapp nil)
(gc)(gc)(gc)
(alert (strcat "File saved as:\n" fname))
(*error* nil)
(princ)
)
(prompt "\n\t\t---\tStart command with ALDIMTXL\t---\n")
(princ)
(vl-load-com)
(princ)
;;----------------------------code end-------------------------------;;
~'J'~ 感谢“lee mac”,但“数据提取”在CAD2007上不可用 非常感谢“fixo”!
你的Lisp程序很好!
谢谢 老实说,这并不太好
更改它以获得可靠的结果
~'J'~ fixoYour先生Lisp程序很好非常感谢 没有你想象的那么好,
把它们涂到你的西装上
干杯 你的模只取标称值
我可以导出带公差的尺寸吗,?
示例值:11,20-11.60标称尺寸(11.40)
谢谢,我希望能解释我的问题。
页:
[1]