马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
 - (defun c:tt ()
- (if (and
- (setq e (car (xdrx_entsel "\n拾取一个多段线<退出>:" '((0 . "*POLYLINE")))))
- (setq fl (xdrx_system_selectFiles "选择文件" "界址点" "xls" 1))
- (setq fl (car fl))
- )
- (progn
- (setq ll nil)
- (setq pts (xdrx_getpropertyvalue e "vertices"))
- (setq ll (list '("编号" "X"
- "Y" "Z"
- )
- )
- )
- (setq j 1)
- (foreach n pts
- (setq ll (cons (list j (cadr n) (car n) (caddr n)) ll)
- j (1+ j)
- )
- )
- (setq ll (reverse ll))
- (if (and
- (xdex_book_open)
- (xdex_book_addsheet "界址点" t)
- )
- (progn
- (setq j 0)
- (foreach n ll
- (xdex_cell_write j 0 (car n))
- (xdex_cell_write j 1 (cadr n))
- (xdex_cell_write j 2 (caddr n))
- (xdex_cell_write j 3 (cadddr n))
- (setq j (1+ j))
- )
- (if (xdex_book_save fl)
- (progn
- (princ "\n文件生成成功.")
- (xdrx_system_shellexecute fl);;Execl打开刚生成的界址点坐标表
- )
- )
- (xdex_book_close)
- )
- )
- )
- )
- (princ)
- )
上面是用 xdex_cell_write 一个单元格一个单元格的写,下面使用 xdex_cell_writeRange 可以批量按范围写一次。
 - (defun c:tt ()
- (if (and
- (setq e (car (xdrx_entsel "\n拾取一个多段线<退出>:" '((0 . "*POLYLINE")))))
- (setq fl (xdrx_system_selectFiles "选择文件" "界址点" "xls" 1))
- (setq fl (car fl))
- )
- (progn
- (setq ll nil)
- (setq pts (xdrx_getpropertyvalue e "vertices"))
- (setq ll (list '("编号" "X"
- "Y" "Z"
- )
- )
- )
- (setq j 1)
- (foreach n pts
- (setq ll (cons (list (itoa j) (cadr n) (car n) (caddr n)) ll)
- j (1+ j)
- )
- )
- (setq ll (reverse ll))
- (if (and
- (xdex_book_open)
- (xdex_book_addsheet "界址点" t)
- )
- (progn
- (xdex_cell_writerange 0 0 ll)
- (if (xdex_book_save fl)
- (progn
- (princ "\n文件生成成功.")
- (xdrx_system_shellexecute fl);;Execl打开刚生成的界址点坐标表
- )
- )
- (xdex_book_close)
- )
- )
- )
- )
- (princ)
- )
|