Khai báo để chạy thủ tục trong file *.DLL (dựa ONKEY)

Liên hệ QC

VADaNang

Thành viên chính thức
Tham gia
4/12/06
Bài viết
65
Được thích
47
Xin hỏi
Application.Onkey(key, Procedure)
Trong lệnh này có cách nào khai báo để Procedure chạy trực tiếp một lệnh từ file thư viện *.DLL
(gọi trực tiếp thủ tục từ *.DLL)
Xin cám ơn.
 
Dear VADaNang,
----------------
Để thực thi được thủ tuc trong DLL anh cần khai báo Reference cho DDL đó. Chỉ sau khi khai báo thành phần này chúng ta mới có thể Call được các thủ tục trong Class Module của DLL.

Vấn đề còn lại là gán thủ tục này vào Procedure như thế nào? Tham số này là 1 string chỉ định tên thủ tục có thể thực thi được trong môi trường VBA. Anh hòan toàn tạo ra một thủ tục VBA để thực thi chương trình trong DLL. Ví dụ như sau:

Sub VBA_Pro()
Dim clsMod As New <Module Class trong DLL đã được khai báo tham chiếu>
Set clsMod = <Module Class trong DLL đã được khai báo tham chiếu>
Call clsMod.DLL_Pro 'Thủ tục lưu trữ trong DLL
End Sub

Khi đó trong thủ tục có lện Onkey, anh viết:

Application.Onkey(key, VBA_Pro)

Chúc anh thành công!
 
Cám ơn bạn đã quan tâm.
Thường thì mình vẫn làm như cách bạn đã nêu nhưng thấy hơi không hay là chỗ thủ tục trong ONKEY phải gọi thủ tục trong VBA và từ VBA gọi thủ tục (cần) tiếp từ trong *.DLL như vậy phải qua hai giai đoạn.
Nên ý mình là thủ tục từ OKEY có gọi được trực tiếp đến luôn thủ tục trong *.DLL để cho gọn hơn.
 
Web KT
Back
Top Bottom