Đến nội dung


Hình ảnh
- - - - -

Sử dụng VBA để liên kết AutoCad với Excel


  • Please log in to reply
9 replies to this topic

#1 phantuhuong

phantuhuong

    biết dimstyle

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

Đã gửi 10 June 2007 - 12:21 PM

Trong lĩnh vực kỹ thuật như trắc địa, địa chất, xây dựng, giao thông, kiến trúc, chế tạo máy,... phần mền AutoCad được sử dụng rất phổ biến. Bạn có thể sử dụng VBA trong Excel để vẽ các đối tượng hình học trong AutoCad như chủ đề đã có. Và tại sao ta lại không thể làm ngược lại?! Bạn hãy sử dụng ngôn ngữ VBA trong AutoCad để thực hiện công việc đó. Nếu bạn đã biết VBA trong Excel thì cũng nhanh chóng học được VBA trong AutoCad. Để dễ dàng so sánh giữa chúng, tôi xin giới thiệu 2 thủ tục để mở AutoCad từ Excel và ngược lại:


Sub Mo_AutoCad()

Dim AcaDApp As Object

On Error Resume Next

Set AcadApp = GetObject(, "AutoCAD.Application")
If Err <> 0 Then
Err.Clear
KT = True
Set AcadApp = CreateObject("AutoCAD.Application")
End If
AppActivate AcadApp.Caption
AcadApp.Visible = True

Set AcadApp = Nothing
End Sub


Sub Mo_Excel()

Dim ExcelApp As Object
On Error Resume Next

Set ExcelApp = GetObject(, "Excel.Application")
If Err <> 0 Then
Err.Clear
Set ExcelApp = CreateObject("Excel.Application")
End If
ExcelApp.Visible = True
AppActivate ExcelApp.Caption
ExcelApp.Workbooks.Add

Set ExcelApp = Nothing
End Sub


Để sử dụng được chức năng Auto List Member thì các bạn nên thay:

Dim ExcelApp As Object

bằng:

Dim ExcelApp As Excel.Application
  • -3
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!


#2 congchi

congchi

    biết vẽ pline

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

Đã gửi 20 June 2007 - 04:53 PM

Có nhiều cách link giữa excel với cad, nhưng tui khoái nhất là chức năng run sript của cad. Mọi việc cứ làm trên excel, sau đó viết một module dịch cái mớ excel ra những lệnh cad trong file script. Vô cad chạy nó, thưởng thức những động tác vẽ như mình vẽ.
  • 0

#3 duy782006

duy782006

    PHẠM QUỐC DUY

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 2155 Bài viết
Điểm đánh giá: 1360 (rất tốt)

Đã gửi 20 June 2007 - 05:29 PM

Có nhiều cách link giữa excel với cad, nhưng tui khoái nhất là chức năng run sript của cad. Mọi việc cứ làm trên excel, sau đó viết một module dịch cái mớ excel ra những lệnh cad trong file script. Vô cad chạy nó, thưởng thức những động tác vẽ như mình vẽ.


Nghe thú dị gớm hỉ. Chỉ cho cái đi bạn. Kỉ kỉ chút nghen chưa biết gì về trò này cả. Cám ơn !!!!!!!!!!
  • 0

Cứ ngỡ trần gian là cõi thật.Cho nên tất bật đến bây giờ.
Tạo hộp thoại bằng lisp My blog QUY ĐỊNH ĐẶT TÊN TOPIC TRONG CHUYÊN MỤC LISPD http://ktsduy.wordpress.com/
Để cám ơn chỉ cần nhấn rep_up.png
(Là nhấn vào nút đó phía bài viết của người ta í chứ đừng có nhè cái hình này mà nhấn miết đi nha :-D


#4 congchi

congchi

    biết vẽ pline

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

Đã gửi 21 June 2007 - 06:20 PM

Ví dụ đơn giản là bạn muốn vẽ một hình chữ nhật.
Nếu vẽ bằng cad, bạn sẽ dùng lện "rec" để vẽ.
Để vẽ tự động, ta soạn 1 dòng lệnh sau trong file script :
rec 0,0 100,100
(ghi chú dấu space tương đương với lệnh enter).
Khi chạy file script này, nó sẽ vẽ hình chữ nhật có góc tại 0,0 và 100,100.
Để dùng excel để vẽ, ta sẽ nhập toạ độ các góc vào bảng của excel. Dùng vài ba cái hàm đơn giản để dịch các số trong bảng đó theo cú pháp trên. Copy cú pháp đó past vào cad là nó vẽ như thế. Nếu rảnh thì viết module viết thẳng vào file script, vô cad chạy cũng được.
Ví dụ vẽ các hình chữ nhật chạy theo đường parabol như sau.
(Upload file bằng cách nào nhỉ)
Upload.xls
  • 0

#5 Nguyen Hoanh

Nguyen Hoanh

    biết lệnh adcenter

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

Đã gửi 21 June 2007 - 08:52 PM

(Upload file bằng cách nào nhỉ)

http://www.cadviet.com/forum/index.php?s=&...dpost&p=356
  • 0

#6 phantuhuong

phantuhuong

    biết dimstyle

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

Đã gửi 28 June 2007 - 10:13 PM

http://www.cadviet.com/forum/index.php?s=&...dpost&p=356


Mời các bạn quan tâm vấn đề này cho ý kiến nhé, còn nhiều vấn đề lắm!!!!!!!!!!
  • 0
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!


#7 vndesperados

vndesperados

    biết lệnh xref

  • Members
  • PipPipPipPipPipPipPip
  • 547 Bài viết
Điểm đánh giá: 253 (khá)

Đã gửi 29 June 2007 - 08:56 AM

Ví dụ đơn giản là bạn muốn vẽ một hình chữ nhật.
Nếu vẽ bằng cad, bạn sẽ dùng lện "rec" để vẽ.
Để vẽ tự động, ta soạn 1 dòng lệnh sau trong file script :
rec 0,0 100,100
(ghi chú dấu space tương đương với lệnh enter).
Khi chạy file script này, nó sẽ vẽ hình chữ nhật có góc tại 0,0 và 100,100.
Để dùng excel để vẽ, ta sẽ nhập toạ độ các góc vào bảng của excel. Dùng vài ba cái hàm đơn giản để dịch các số trong bảng đó theo cú pháp trên. Copy cú pháp đó past vào cad là nó vẽ như thế. Nếu rảnh thì viết module viết thẳng vào file script, vô cad chạy cũng được.
Ví dụ vẽ các hình chữ nhật chạy theo đường parabol như sau.
(Upload file bằng cách nào nhỉ)
Upload.xls



Trò này đem chơi hay dọa người khác thì cũng được nhưng mà để viết ứng dụng có vẻ không khả thi lắm.
Còn muốn vẽ mấy cái hình CN chạy theo parabol đó thì không cần đến phức tạp vậy đâu
Bác tìm được đọan code hay ý tưởng nào hay hơn thì đưa lên anh em học hỏi chứ như trên thì chưa thuyết phục lằm, hehehehehehe
  • 0

#8 phunguyen.tvxd

phunguyen.tvxd

    Chưa sử dụng CAD

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

Đã gửi 06 April 2015 - 05:30 PM

Nhờ cao thủ giúp e, làm sao để e sửa được nó ạ


  • 0

#9 cuongautocad

cuongautocad

    Chưa sử dụng CAD

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

Đã gửi 09 March 2016 - 09:22 PM

mih la linh moi ai co tai lieu hoc  vba ko cho mih file va bai thuc hanh vs...

xin cam on


  • 0

#10 cuongautocad

cuongautocad

    Chưa sử dụng CAD

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

Đã gửi 09 March 2016 - 09:45 PM

mih la linh moi ai co tai lieu hoc  vba ko cho mih file va bai thuc hanh vs...

xin cam on


  • 0