Đến nội dung


Hình ảnh
- - - - -

Gọi form vba bằng lisp


  • Please log in to reply
6 replies to this topic

#1 dinhtuyendevil

dinhtuyendevil

    biết pan

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

Đã gửi 18 December 2012 - 11:12 AM

mình có 1 chương trình viết bằng vba. giờ muốn gọi lệnh trên cad
trên chương trình vba mình để một hàm


Sub Start()
UserForm.Show
End Sub

sau đó mình tạo một lisp


(defun C:ve1()
(command "-VBARUN""start")
)

sau đó chạy cad. Nhưng khi mình gõ lệch "ve1"
thi trên cad cứ báo


Macro not found.
Command: nil

ko biết mình làm sai ở đâu. ai đó biết làm ơn chỉ giúp mình
xin cám ơn
  • 0

#2 garupro

garupro

    biết vẽ circle

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

Đã gửi 28 December 2012 - 07:56 PM

(defun C:ve1 (/)
(command "-vbarun" "Start")
)

Mà khi load lisp có load luôn cái file dvb vào ko vậy ???????
  • 0

#3 nguyendan81985

nguyendan81985

    biết vẽ circle

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

Đã gửi 13 November 2013 - 09:21 AM

mình cũng làm như bạn mà ko đc nhỉ. khi load lisp mình cũng load luôn cái file .dvb vào luôn. vẫn báo là: Macro not found. Command: nil

giúp mình tí nhé. thanks


  • 0

#4 Namvanvo

Namvanvo

    Edu level: li5

  • Members
  • PipPipPipPipPip
  • 386 Bài viết
Điểm đánh giá: 42 (tàm tạm)

Đã gửi 13 November 2013 - 09:33 AM

bạn gửi file .dvb lên mình xem thử, hình như trong câu lệnh này (command "-vbarun" "Start") thì bị thiếu module name bạn sửa lại thành (command "-vbarun" "module name.sub name")


  • 0

#5 nguyendan81985

nguyendan81985

    biết vẽ circle

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

Đã gửi 13 November 2013 - 04:07 PM

đây bạn ơi. xem giúp mình tí nhé. thanks

http://www.cadviet.c...shopdrawing.zip


  • 0

#6 HungDHXD

HungDHXD

    biết vẽ ellipse

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

Đã gửi 13 November 2013 - 05:28 PM

Bạn thêm đoạn mã sau vào module1 trong file DVB của mình :

 

Sub main()
    AutoShopDrawing.show
End Sub

 

 

** Tạo 1 lisp :

 

(defun C:Main()
(command "-VBARUN" "main")
)

--> load cả 2 file DVD và lisp trên vào : gõ lệnh Main ===> thưởng thức và báo kết quả

Sub main()
    AutoShopDrawing.show
 

 

Sub main()
    AutoShopDrawing.show
 

 

Sub main()
    AutoShopDrawing.show
End Sub

 

 

 

(defun C:Main()
(command "-VBARUN" "main")
)

 

 

Sub main()
    AutoShopDrawing.show
End Sub
 
Sau đó tạo 1 lisp với nội dung như sau :
(defun C:Main()
(command "-VBARUN" "main")
)
 
****==> load cả 2 file DVB, và lisp trên vào 
Tại autocad gõ lệnh Main --> và thưởng thức !!!

  • 1

#7 nguyendan81985

nguyendan81985

    biết vẽ circle

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

Đã gửi 13 November 2013 - 08:44 PM

mình đã làm được. thanks bạn nhiều nhé.


  • 0