arunr_18 发表于 2022-7-6 06:19:22

错误:参数太少

请帮助我,当我使用wtx时,我面临“错误:参数太少”的问题。用于将文本导出到excel的lsp。
Wtx01(1)。lsp

pBe 发表于 2022-7-6 06:25:19

参数太少。。。。。
(close f)

arunr_18 发表于 2022-7-6 06:31:46

对不起,先生,我没有理解你。。。你想说什么。。

Tharwat 发表于 2022-7-6 06:35:08

在剩下的例程中,请考虑对该代码的这种修改。
 

(defun c:wtt (/ p1 p2 ss f l a b c d c1 t1 d1 t2 t3 txt)
(if (and (setq p1 (getpoint "Point :\n:"))
          (setq p2 (getcorner p1 "Other corner :\n:"))
          (setq ss (ssget "_W" p1 p2 '((0 . "*TEXT"))))
          (if (not (setq f (open "d:\\coords.csv" "w")))
            (progn (alert "Can not open Excel file !!") nil)
            t
          )
   )
   (repeat (setq l (sslength ss))
   (setq a   (ssname ss (setq l (1- l)))
         b   (entget a)
         c   (assoc 10 b)
         d   (assoc 1 b)
         c1(cdr c)
         t1(rtos (car c1) 2 3)
         d1(cdr d)
         t2(rtos (cadr c1) 2 3)
         t3(rtos (caddr c1) 2 3)
         txt (strcat t1 "," t2 "," t3 "," d1)
   )
   (write-line txt f)
   )
)
(if f
   (close f)
)
(princ)
)

arunr_18 发表于 2022-7-6 06:39:28

非常感谢先生。。。它正在工作。。。
非常感谢:D

pBe 发表于 2022-7-6 06:43:34

 
这就是您收到错误消息的原因。。论点太少。
 
考虑一下这个
 
(defun c:wtx()(if(and(setq p1(getpoint“\n第一个角:”)(setq p2(getcorner p1“\n:其他角:”)(setq ss(ssget“w”p1 p2 p2((0。“INSERT”))(setq l(sslength ss)n 0)(setq fto(findfile coords.csv))(print l))(progn(setq f(open fto“w”)(重复l(setq a(ssname ss n)b(entget a)c(assoc 10 b)d(assoc 2 b)c1(cdr c)t1(rtos(car c1)2 3)d1(cdr d)t2(rtos(cadr c1)2 3)t3(rtos(caddr c1)2 3)txt(strcat t1”,“t2”,“t3”,“d1)n(+n 1))(写入行txt f)(闭合f);

arunr_18 发表于 2022-7-6 06:49:03

谢谢你,先生。。

arunr_18 发表于 2022-7-6 06:49:40

先生,你能给我一个lisp来准备纵断面图吗

Tharwat 发表于 2022-7-6 06:53:56

 
不客气。

pBe 发表于 2022-7-6 07:00:16

 
 
呃。。。你是在回复我还是塔瓦?
页: [1] 2
查看完整版本: 错误:参数太少