Đến nội dung


Hình ảnh
- - - - -

xuất chữ từ excel ra cad


  • Please log in to reply
31 replies to this topic

#1 amateurday

amateurday

    biết lệnh break

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

Đã gửi 16 May 2009 - 09:01 PM

các bác chỉ cho em làm sao xuất chữ từ excel ra cad được không ạ
  • 0

#2 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

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

Đã gửi 16 May 2009 - 09:09 PM

các bác chỉ cho em làm sao xuất chữ từ excel ra cad được không ạ

Bạn upload file excelên đây và cần xuất chữ từ excel ra cad như thế nào thì bạn hãy nói rõ nhé
  • 0

#3 amateurday

amateurday

    biết lệnh break

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

Đã gửi 16 May 2009 - 09:22 PM

Bạn upload file excelên đây và cần xuất chữ từ excel ra cad như thế nào thì bạn hãy nói rõ nhé


tại cũng đơn giản nên em không up file lên, em có chữ bên excel ở trên 1 cột, tọa độ có trên 1 cột khác, em dùng cad2008. Bây giờ xuất các chữ đó nằm đúng vào các tọa độ trên. bác giúp em nhé
  • 0

#4 khanhduy

khanhduy

    biết vẽ arc

  • Members
  • PipPip
  • 45 Bài viết
Điểm đánh giá: -70 (yếu)

Đã gửi 16 May 2009 - 09:26 PM

thứ nhất bạn fải tạo các số bên bản cad,lập thành attribute sau đó bạn xuất sang file text.rồi bạn copy 2 text kia vao file text đã xuất lúc nãy.xong đấy lai xuất ngược vào cad nhá.
  • 0

#5 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

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

Đã gửi 16 May 2009 - 09:27 PM

tại cũng đơn giản nên em không up file lên, em có chữ bên excel ở trên 1 cột, tọa độ có trên 1 cột khác, em dùng cad2008. Bây giờ xuất các chữ đó nằm đúng vào các tọa độ trên. bác giúp em nhé

Chưa hiểu ý. Bạn cứ up file CAD và Excel lên đây và nói rõ ra. Cái dòng màu đỏ là mình chưa hiểu đó
  • 0

#6 amateurday

amateurday

    biết lệnh break

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

Đã gửi 16 May 2009 - 10:16 PM

Chưa hiểu ý. Bạn cứ up file CAD và Excel lên đây và nói rõ ra. Cái dòng màu đỏ là mình chưa hiểu đó


http://www.mediafire...04e75f6e8ebb871
host của cadviet không up được nên em up lên đó. file book.xls nha bác
  • 0

#7 amateurday

amateurday

    biết lệnh break

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

Đã gửi 16 May 2009 - 10:18 PM

thứ nhất bạn fải tạo các số bên bản cad,lập thành attribute sau đó bạn xuất sang file text.rồi bạn copy 2 text kia vao file text đã xuất lúc nãy.xong đấy lai xuất ngược vào cad nhá.


bác nói em không biết làm, em không rành về cad lắm bác à.
  • 0

#8 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

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

Đã gửi 16 May 2009 - 10:42 PM

http://www.mediafire...04e75f6e8ebb871
host của cadviet không up được nên em up lên đó. file book.xls nha bác

Bạn xem lại file của bạn một chút. Không download về được. Nó hiện ra chữ này : Processing download request...
Không download về được
  • 0

#9 amateurday

amateurday

    biết lệnh break

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

Đã gửi 16 May 2009 - 10:49 PM

Bạn xem lại file của bạn một chút. Không download về được. Nó hiện ra chữ này : Processing download request...
Không download về được


http://www.cadviet.c...pfiles/Book.zip
trang mediafỉre thỉnh thoảng xảy ra tình huống như vậy.
  • 0

#10 amateurday

amateurday

    biết lệnh break

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

Đã gửi 16 May 2009 - 11:13 PM

http://www.cadviet.c...s/Drawing_6.dwg
file cad đây nữa, bác nào giúp em
  • 0

#11 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

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

Đã gửi 16 May 2009 - 11:19 PM

tại cũng đơn giản nên em không up file lên, em có chữ bên excel ở trên 1 cột, tọa độ có trên 1 cột khác, em dùng cad2008. Bây giờ xuất các chữ đó nằm đúng vào các tọa độ trên. bác giúp em nhé

Đầu tiên trong Excel bạn bôi đen cột có chữ a,b,c,d,e,f -> Bấm Ctrol+C -> Qua CAD -> trên thanh công cụ -> Edit -> Chọn Paste Special -> Chọn AutoCAD Entities -> OK
Như vậy ccọt có chữ a,b,c,d,e,f đã được chuyển qua CAD. Sử dụng lệnh MA để làm cho chữ a,b,c,d,e,f đó bằng với chữ ở cột có toạ độ x, y. Có thể sử dụng lệnh Scaletext. Lệnh này bạn xem ở đây : http://www.cadviet.c...o...mp;p=51051
Sau đó, sử dụng đoạn Lisp này mà Tue_NV đã cải tiến để giãn dòng text để giãn dòng text cột a,b,c,d,e,f với khoảng cách giữa các text : bằng khoảng cách giữa 2 điểm pick. bạn pick 1 điểm ở dòng đầu của cột X (Tue_NV đã sử dụng chế độ bắt điểm Insert trong Lisp) và pick 1 điểm ở dòng tiếp theo của cột X.
Tức là Lisp sẽ lấy khoảng cách giữa các text được đo bằng 2 điểm pick trên màn hình và 2 điểm Pick này Tue_NV đã sử dụng thêm chế độ bắt điểm Insert
Sau đó bạn move cột có chữ a,b,c,d,e,f về bằng với cột X, Y là thành công. Ở đoạn này bạn sử dụng chế độ bắt điểm From + chế độ bắt điểm Insert (dùng tổ hợp phím shift + Phím phải chuột)
Lisp đây :

(defun c:saptext()
(setq oldos (getvar "osmode"))
(setvar "osmode" 64)
(setq ss (ssget '((0 . "TEXT")))
lst (ss2ent ss)
lst (vl-sort lst
'(lambda (e1 e2)
(>
(caddr (assoc 10 (entget e1)))
(caddr (assoc 10 (entget e2)))
)
)
)
)
(setq kc (getdist "\n Nhap khoang cach giua cac Text :"))
(setq ddau (cdr(assoc 10 (entget(car lst))))
i 0)
(setvar "osmode" 0)
(foreach e lst
(setq ent (entget e))
(setq dcuoi (cdr(assoc 10 ent)))
(setq ddauu (list (car ddau) (- (cadr ddau) (* i kc)) 0))
(command "move" e "" dcuoi ddauu)
(setq i (1+ i))
)
(setvar "osmode" oldos)
(Princ)
)

(defun ss2ent (ss / sodt index lstent)
(setq
sodt (if ss (sslength ss) 0)
index 0
)
(repeat sodt
(setq ent (ssname ss index)
index (1+ index)
lstent (cons ent lstent)
)
)
(reverse lstent)
)

Chúc thành công. Có gì chưa được thì post lên đây nhé.
  • 0

#12 amateurday

amateurday

    biết lệnh break

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

Đã gửi 16 May 2009 - 11:38 PM

Đầu tiên trong Excel bạn bôi đen cột có chữ a,b,c,d,e,f -> Bấm Ctrol+C -> Qua CAD -> trên thanh công cụ -> Edit -> Chọn Paste Special -> Chọn AutoCAD Entities -> OK
Như vậy ccọt có chữ a,b,c,d,e,f đã được chuyển qua CAD. Sử dụng lệnh MA để làm cho chữ a,b,c,d,e,f đó bằng với chữ ở cột có toạ độ x, y. Có thể sử dụng lệnh Scaletext. Lệnh này bạn xem ở đây : http://www.cadviet.c...o...mp;p=51051
Sau đó, sử dụng đoạn Lisp này mà Tue_NV đã cải tiến để giãn dòng text để giãn dòng text cột a,b,c,d,e,f với khoảng cách giữa các text : bằng khoảng cách giữa 2 điểm pick. bạn pick 1 điểm ở dòng đầu của cột X (Tue_NV đã sử dụng chế độ bắt điểm Insert trong Lisp) và pick 1 điểm ở dòng tiếp theo của cột X.
Tức là Lisp sẽ lấy khoảng cách giữa các text được đo bằng 2 điểm pick trên màn hình và 2 điểm Pick này Tue_NV đã sử dụng thêm chế độ bắt điểm Insert
Sau đó bạn move cột có chữ a,b,c,d,e,f về bằng với cột X, Y là thành công. Ở đoạn này bạn sử dụng chế độ bắt điểm From + chế độ bắt điểm Insert (dùng tổ hợp phím shift + Phím phải chuột)
Lisp đây :


(defun c:saptext()
(setq oldos (getvar "osmode"))
(setvar "osmode" 64)
(setq ss (ssget '((0 . "TEXT")))
lst (ss2ent ss)
lst (vl-sort lst
'(lambda (e1 e2)
(>
(caddr (assoc 10 (entget e1)))
(caddr (assoc 10 (entget e2)))
)
)
)
)
(setq kc (getdist "\n Nhap khoang cach giua cac Text :"))
(setq ddau (cdr(assoc 10 (entget(car lst))))
i 0)
(setvar "osmode" 0)
(foreach e lst
(setq ent (entget e))
(setq dcuoi (cdr(assoc 10 ent)))
(setq ddauu (list (car ddau) (- (cadr ddau) (* i kc)) 0))
(command "move" e "" dcuoi ddauu)
(setq i (1+ i))
)
(setvar "osmode" oldos)
(Princ)
)

(defun ss2ent (ss / sodt index lstent)
(setq
sodt (if ss (sslength ss) 0)
index 0
)
(repeat sodt
(setq ent (ssname ss index)
index (1+ index)
lstent (cons ent lstent)
)
)
(reverse lstent)
)

Chúc thành công. Có gì chưa được thì post lên đây nhé.


text của em nhiều và khoảng cách nó không bằng nhau bác à. Nếu làm thế thì lâu quá.
bác vào excel gõ thế này:
dt 10,30 5 0 text1

dt 20,40 5 0 text2
giữa 2 dòng cách nhau 1 dòng nhé,
rồi bác copy hết sang cad dán vào dòng lệnh command, bác sẽ hiểu, nhưng hình như chỉ dùng được cad 2000, cad 2008 ko được,cad khác em chưa thử. em không còn cad2000 nữa
đây là thủ thuật cực hay để chuyển text nhưng không xài được cho cad mới, buồn ghê
  • 0

#13 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

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

Đã gửi 16 May 2009 - 11:57 PM

text của em nhiều và khoảng cách nó không bằng nhau bác à. Nếu làm thế thì lâu quá.
bác vào excel gõ thế này:
dt 10,30 5 0 text1

dt 20,40 5 0 text2
giữa 2 dòng cách nhau 1 dòng nhé,
rồi bác copy hết sang cad dán vào dòng lệnh command, bác sẽ hiểu, nhưng hình như chỉ dùng được cad 2000, cad 2008 ko được,cad khác em chưa thử. em không còn cad2000 nữa
đây là thủ thuật cực hay để chuyển text nhưng không xài được cho cad mới, buồn ghê

Việc gì phải khổ sở thế bạn. Cách làm của mình thế này :
Đầu tiên trong Excel bạn bôi đen cột -> Bấm Ctrol+C -> Qua CAD -> trên thanh công cụ -> Edit -> Chọn Paste Special -> Chọn AutoCAD Entities -> OK.
Dùng lệnh Scale với lựa chọn Reference là xong.
Nếu để canh lề nữa thì bạn sử dụng Lisp canh lề có trên diễn đàn
  • 0

#14 amateurday

amateurday

    biết lệnh break

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

Đã gửi 17 May 2009 - 12:05 AM

Việc gì phải khổ sở thế bạn. Cách làm của mình thế này :
Đầu tiên trong Excel bạn bôi đen cột -> Bấm Ctrol+C -> Qua CAD -> trên thanh công cụ -> Edit -> Chọn Paste Special -> Chọn AutoCAD Entities -> OK.
Dùng lệnh Scale với lựa chọn Reference là xong.
Nếu để canh lề nữa thì bạn sử dụng Lisp canh lề có trên diễn đàn


bác chưa hiểu ý em rồi. bây giờ em có 1 tấm bản đồ trắng trơn không có j cả, bên excel em có 200 tên thủ đô, có toạ độ chính xác của chúng là x,y. bây giờ bác giúp em ghi tên của 200 thủ đô đó vào tấm bản đồ được không. đó là cái em cần đó
  • 0

#15 khanhduy

khanhduy

    biết vẽ arc

  • Members
  • PipPip
  • 45 Bài viết
Điểm đánh giá: -70 (yếu)

Đã gửi 17 May 2009 - 12:11 AM

làm theo cách của tớ chưa.nêu như bạn nói thì tui nhập toạ độ vào bản cad k đến 15phút.up dc bản cad có mấy chữ a b c...... :mellow:
  • 0

#16 amateurday

amateurday

    biết lệnh break

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

Đã gửi 17 May 2009 - 12:17 AM

làm theo cách của tớ chưa.nêu như bạn nói thì tui nhập toạ độ vào bản cad k đến 15phút.up dc bản cad có mấy chữ a b c...... :mellow:


bạn hướng dẫn lại đi, mình không biết tạo số trên cad rồi attribute là sao nữa, rồi tạo file text thế nào nữa
  • 0

#17 khanhduy

khanhduy

    biết vẽ arc

  • Members
  • PipPip
  • 45 Bài viết
Điểm đánh giá: -70 (yếu)

Đã gửi 17 May 2009 - 12:38 AM

bạn dùng lệnh att tao các text có thuộc tính rồi bạn đóng block lại(cái này bạn có thể tìm hiểu thêm trên diễn đàn).bạn cop các block đó đến các điểm bạn cần điền vào nhá.tiếp sau đó bạn vào express/blocks/export attribute infomatiọn tiếp đó bạn chọn các block vừa làm(chú ý:nhớ chọn thứ tự theo stt cái file excel nhá) khi đấy nó sẽ xuất ra cho bạn 1 file dạng txt. bạn chỉ cần cop từ file excel sang file text kia là ok.lưu file text đấy lại rồi lại vào express/blocks/import... như thế là ok. những cái này là cơ bản thôi,bạn làm thử 1 lần sẽ biết ngay thôi mà,sorry k hướng dẫn chi tiết đc hết. chúc vui vẻ
  • 1

#18 amateurday

amateurday

    biết lệnh break

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

Đã gửi 17 May 2009 - 12:46 AM

bạn dùng lệnh att tao các text có thuộc tính rồi bạn đóng block lại(cái này bạn có thể tìm hiểu thêm trên diễn đàn).bạn cop các block đó đến các điểm bạn cần điền vào nhá.tiếp sau đó bạn vào express/blocks/export attribute infomatiọn tiếp đó bạn chọn các block vừa làm(chú ý:nhớ chọn thứ tự theo stt cái file excel nhá) khi đấy nó sẽ xuất ra cho bạn 1 file dạng txt. bạn chỉ cần cop từ file excel sang file text kia là ok.lưu file text đấy lại rồi lại vào express/blocks/import... như thế là ok. những cái này là cơ bản thôi,bạn làm thử 1 lần sẽ biết ngay thôi mà,sorry k hướng dẫn chi tiết đc hết. chúc vui vẻ


nếu bạn rảnh thì chỉ cho mình nhé, mình vẫn không làm được.
  • 0

#19 phantuhuong

phantuhuong

    biết dimstyle

  • Moderator
  • PipPipPipPipPip
  • 383 Bài viết
Điểm đánh giá: 200 (khá)

Đã gửi 17 May 2009 - 09:58 PM

Bạn chạy thử từ nút lệnh trong file kèm theo nhé

http://www.cadviet.c...iles/Book_1.zip
  • 2
Bồi dưỡng Excel & VBA cho các đơn vị ở Hà Nội và khu vực lân cận

Từng bước loại đồ Tàu ra khỏi cuộc sống!


#20 doanduyhung

doanduyhung

    biết vẽ spline

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

Đã gửi 17 May 2009 - 11:55 PM

You mở cái file excel Book_1.zip phía trên ra nhé:
Trong cột F cự thể là ô F6 nhé nhập vào công thức
="(command "&""""&"text"&""""&" "&""""&C6&","&D6&""""&" "&""""&1&""""&" "&""""&0&""""&" "&""""&E6&""""&")"
sau đó kéo ô F6 này cho các ô F còn lại phía dưới
Xong xuôi copy tất cả ô F6 tới ô F11 sau đó mở cad lên rồi past vào dòng command là được.
:mellow:
  • 1