Đến nội dung


Hình ảnh
- - - - -

lisp xuất bảng trong cad 2007 ra file exell


  • Please log in to reply
15 replies to this topic

#1 mr_kao_dhxd

mr_kao_dhxd

    biết zoom

  • Members
  • Pip
  • 14 Bài viết
Điểm đánh giá: 0 (bình thường)

Đã gửi 18 July 2013 - 08:34 AM

tình hình là em có bảng khối lượng trong cad 2007 mà không biết xuất ra exell kiểu gì mong các cao nhân giúp em một lisp với ạ..đây là bản vẽ của em ạ http://www.mediafire...mf2xmtn471ak2mt

em cần gấp lắm ạ

em cám ơn nhiều lắm ạ


  • 0

#2 sonnv36

sonnv36

    biết lệnh copy

  • Members
  • PipPipPip
  • 119 Bài viết
Điểm đánh giá: -12 (hơi kém)

Đã gửi 18 July 2013 - 08:44 AM

Dùng cái này nè, rất tiện cho e2c, c2e http://www.cadviet.c.../3/117873_a.rar

Thân.


  • 0

Online một ngày đàng...học vài sàng khôn :)


#3 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

  • Moderator
  • PipPipPipPipPipPipPip
  • 4296 Bài viết
Điểm đánh giá: 3804 (đỉnh cao)

Đã gửi 18 July 2013 - 08:48 AM

tình hình là em có bảng khối lượng trong cad 2007 mà không biết xuất ra exell kiểu gì mong các cao nhân giúp em một lisp với ạ..đây là bản vẽ của em ạ http://www.mediafire...mf2xmtn471ak2mt

em cần gấp lắm ạ

em cám ơn nhiều lắm ạ

 

Bạn đã sử dụng Table làm đối tượng bảng trong CAD

Vậy bạn sử dụng lệnh Tableexport -> để xuất bảng đó sang file Excel


  • 1

#4 sonnv36

sonnv36

    biết lệnh copy

  • Members
  • PipPipPip
  • 119 Bài viết
Điểm đánh giá: -12 (hơi kém)

Đã gửi 18 July 2013 - 08:54 AM

Mình thấy tính năng table rất hay. Bạn Tue_NV có thể cho mình biết là size , font chữ bên exel sang cad liên quan như thế nào k? 
Mỗi lần mình chuyển từ exel -> Cad pải chỉnh lại font chữ,size chữ mất công qá.
Thân.


  • 0

Online một ngày đàng...học vài sàng khôn :)


#5 lyky

lyky

    biết vẽ polygon

  • Members
  • PipPip
  • 70 Bài viết
Điểm đánh giá: 126 (tàm tạm)

Đã gửi 18 July 2013 - 08:59 AM

Bạn Explode Table để được Text (hoặc MText) trước đã, sau đó sử dụng LISP sau, Mở file lyky.txt được xuất ra tại "C:\\lyky.txt" bằng Excel.
(defun C:C2T ( / e f lst ss y z)
  (setq ss  (acet-ss-to-list (ssget '((0 . "TEXT,MTEXT,RTEXT"))))
        lst (mapcar '(lambda (e) (cons(Dxf 10 (entget e)) (Dxf 1 (entget e)))) ss)
        z   (* (Dxf 40 (entget (car ss))) 0.5)
        lst (vl-sort lst (function (lambda (e1 e2) (Compare2D (car e1) (car e2) z))))
        f   (open "C:\\lyky.txt" "w"))
(foreach e lst
(princ (if (equal y (cadr (car e)) z) "\t" "\n") f)
(princ (cdr e) f) (setq y (cadr (car e)))) (close f)
(prompt "Ket qua xuat ra tai C:/lyky.txt"))
(defun Compare2D (p q f / ) (if (equal (cadr p) (cadr q) f) (< (car p) (car q)) (> (cadr p) (cadr q))))
(defun Dxf(n e) (cdr (assoc n e)))

  • 1

22665_13x13progress.gif   22665_lyky.gif   22665_13x13progress.gif


#6 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

  • Moderator
  • PipPipPipPipPipPipPip
  • 4296 Bài viết
Điểm đánh giá: 3804 (đỉnh cao)

Đã gửi 18 July 2013 - 09:10 AM

Bạn Explode Table để được Text (hoặc MText) trước đã, sau đó sử dụng LISP sau, Mở file lyky.txt được xuất ra tại "C:\\lyky.txt" bằng Excel.

.......

 

Đã có tính năng Export table sang excel (bằng lệnh Tableexport) rồi bạn lyky ơi, không cần phải "nổ" table nữa  


  • 1

#7 mr_kao_dhxd

mr_kao_dhxd

    biết zoom

  • Members
  • Pip
  • 14 Bài viết
Điểm đánh giá: 0 (bình thường)

Đã gửi 18 July 2013 - 09:43 AM

Bạn đã sử dụng Table làm đối tượng bảng trong CAD

Vậy bạn sử dụng lệnh Tableexport -> để xuất bảng đó sang file Excel

em đã dùng lệnh và nó ra thế này anh ạ.. có cách nào khắc phục được không ạanh.jpg


  • 0

#8 mr_kao_dhxd

mr_kao_dhxd

    biết zoom

  • Members
  • Pip
  • 14 Bài viết
Điểm đánh giá: 0 (bình thường)

Đã gửi 18 July 2013 - 09:46 AM

Bạn Explode Table để được Text (hoặc MText) trước đã, sau đó sử dụng LISP sau, Mở file lyky.txt được xuất ra tại "C:\\lyky.txt" bằng Excel.

(defun C:C2T ( / e f lst ss y z)
  (setq ss  (acet-ss-to-list (ssget '((0 . "TEXT,MTEXT,RTEXT"))))
        lst (mapcar '(lambda (e) (cons(Dxf 10 (entget e)) (Dxf 1 (entget e)))) ss)
        z   (* (Dxf 40 (entget (car ss))) 0.5)
        lst (vl-sort lst (function (lambda (e1 e2) (Compare2D (car e1) (car e2) z))))
        f   (open "C:\\lyky.txt" "w"))
(foreach e lst
(princ (if (equal y (cadr (car e)) z) "\t" "\n") f)
(princ (cdr e) f) (setq y (cadr (car e)))) (close f)
(prompt "Ket qua xuat ra tai C:/lyky.txt"))
(defun Compare2D (p q f / ) (if (equal (cadr p) (cadr q) f) (< (car p) (car q)) (> (cadr p) (cadr q))))
(defun Dxf(n e) (cdr (assoc n e)))

em dùng lệnh c2t thì nó ra bang nhưng lại thiếu cột a ạ :(2013-07-18_100053.jpg


  • 0

#9 mr_kao_dhxd

mr_kao_dhxd

    biết zoom

  • Members
  • Pip
  • 14 Bài viết
Điểm đánh giá: 0 (bình thường)

Đã gửi 18 July 2013 - 09:50 AM

Dùng cái này nè, rất tiện cho e2c, c2e http://www.cadviet.c.../3/117873_a.rar

Thân.

em đã thử dùng cái của anh các bước em làm là thế này ạ em chọn cad qua exell --> chọn căn hiệu chỉnh bảng--> vào file cad chọn bảng -->chọn text và xuất ra xell nhưng không thấy hiện bất kỳ một bảng text hay xell nào ở ngoài anh ạ. cách làm của em đã đúng chưa ạ, em cảm ơn


  • 0

#10 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

  • Moderator
  • PipPipPipPipPipPipPip
  • 4296 Bài viết
Điểm đánh giá: 3804 (đỉnh cao)

Đã gửi 18 July 2013 - 09:51 AM

File xuất ra là file *.csv. 

Bạn mở file excel lên -> Chọn đuôi *.csv và mở lên.

File Excel (.csv) của bạn đây:

http://www.cadviet.c...4652_table1.rar


  • 0

#11 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 5454 Bài viết
Điểm đánh giá: 2626 (tuyệt vời)

Đã gửi 18 July 2013 - 09:58 AM

em đã dùng lệnh và nó ra thế này anh ạ.. có cách nào khắc phục được không ạanh.jpg

Lỗi này là do định dạng dấu chấm (.) và dấu phẩy (,).


  • 0

* Chỉ nên yêu cầu Lisp khi bạn làm việc đó mất cả ngày nhưng họ chỉ viết 1 giờ. Đừng nêu yêu cầu Lisp khi bạn chỉ làm 1 giờ nhưng bắt họ phải mất cả ngày.

* Nhờ viết lisp cũng như đi khám bệnh. Chỉ gởi căn cước và than sắp chết thì không bác sỹ nào cứu sống được.


#12 mr_kao_dhxd

mr_kao_dhxd

    biết zoom

  • Members
  • Pip
  • 14 Bài viết
Điểm đánh giá: 0 (bình thường)

Đã gửi 18 July 2013 - 10:06 AM

File xuất ra là file *.csv. 

Bạn mở file excel lên -> Chọn đuôi *.csv và mở lên.

File Excel (.csv) của bạn đây:

http://www.cadviet.c...4652_table1.rar

anh có thể hướng dẫn em chi tiết cách làm được không ạ vì em dùng lệnh tableexport sau đó kích vào cạnh bảng rồi lưu ra file thì bảng của em vẫn như thế kia không được như của anh làm ạ


  • 0

#13 mr_kao_dhxd

mr_kao_dhxd

    biết zoom

  • Members
  • Pip
  • 14 Bài viết
Điểm đánh giá: 0 (bình thường)

Đã gửi 18 July 2013 - 10:07 AM

Lỗi này là do định dạng dấu chấm (.) và dấu phẩy (,).

thưa anh mình chỉnh sửa bằng cách nào ạ


  • 0

#14 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 5454 Bài viết
Điểm đánh giá: 2626 (tuyệt vời)

Đã gửi 18 July 2013 - 10:10 AM

Có phải bạn đang định dạng dấu chấm (.) và phẩy (,) theo TCVN không? Nếu vậy thì định dạng ngược lại thôi.


  • 0

* Chỉ nên yêu cầu Lisp khi bạn làm việc đó mất cả ngày nhưng họ chỉ viết 1 giờ. Đừng nêu yêu cầu Lisp khi bạn chỉ làm 1 giờ nhưng bắt họ phải mất cả ngày.

* Nhờ viết lisp cũng như đi khám bệnh. Chỉ gởi căn cước và than sắp chết thì không bác sỹ nào cứu sống được.


#15 mr_kao_dhxd

mr_kao_dhxd

    biết zoom

  • Members
  • Pip
  • 14 Bài viết
Điểm đánh giá: 0 (bình thường)

Đã gửi 18 July 2013 - 10:19 AM

Có phải bạn đang định dạng dấu chấm (.) và phẩy (,) theo TCVN không? Nếu vậy thì định dạng ngược lại thôi.

vâng em làm được rồi ạ. em cám ơn anh


  • 0

#16 mr_kao_dhxd

mr_kao_dhxd

    biết zoom

  • Members
  • Pip
  • 14 Bài viết
Điểm đánh giá: 0 (bình thường)

Đã gửi 18 July 2013 - 10:21 AM

em cám ơn mọi người đã giúp em em làm được rồi ạ :)


  • 0