Nói tới DLL là gì có lẽ các bạn có thể quay về
Đây được coi là phương án bảo vệ code tốt nhất cho VBA, do đó tôi xin bắt đầu luôn mà không rườm rà.
1. Trên máy tính bạn hãy tìm tới ứng dụng Visual Studio và chạy với quyền admin.
Visual mở lên, bạn vào File => New => Project
Bạn tìm tới Templates => Visual Basic:
Tại đây chọn Class Library.
Nhập tên project là SP2.
Bạn ấn OK.
Tiếp theo bạn vào View => Solution Explorer
Chuột phải vào SP2 chọn Properties.
Vào tab compile
Tích chọn vào Register for COM interop.
Vào Apllication => Assembly Information kiểm tra:
Nếu như dấu tích Make assembly COM-Visible được tích chọn rồi thì OK. Nếu chưa thì bạn phải tích chọn vào.
Vì Office của tôi là 64bit nên trước hết tôi muốn tạo DLL cho 64 bit.
Hãy tìm tới vùng trên này:
Chọn vào x64.
Xin lưu ý bướ này rất quan trọng. Bản thân tôi khi tham khảo, chạy hoài không được, thì ra chỗ này chính là nguyên nhân, họ không có nói cái này mà tôi phải tự lần mò ra, quá khổ sở!!!
Click vào Class1.vb để viết code:
Hãy dán đoạn code sau vào:
Sau đó ấn Start.
Nó ra cảnh báo kệ nó thôi. Không sau đâu. Cứ ấn OK. File DLL được tạo ra rồi đấy.
2. Viết code trên Excel.
Mở Excel lên:
Tạo module mới. Vào Tools => References.
File DLL đã được đăng ký rồi cho nên tìm tới SP2 trong danh sách và tích chọn vào thôi.
Ấn OK.
Trên đó tôi viết code VBA như sau:
Kết quả:
Nguồn tham khảo:
Bạn cần đăng nhập để thấy link
để tìm hiểu lại.Đây được coi là phương án bảo vệ code tốt nhất cho VBA, do đó tôi xin bắt đầu luôn mà không rườm rà.
1. Trên máy tính bạn hãy tìm tới ứng dụng Visual Studio và chạy với quyền admin.
Bạn cần đăng nhập để thấy đính kèm
Visual mở lên, bạn vào File => New => Project
Bạn cần đăng nhập để thấy đính kèm
Bạn tìm tới Templates => Visual Basic:
Tại đây chọn Class Library.
Nhập tên project là SP2.
Bạn cần đăng nhập để thấy đính kèm
Bạn ấn OK.
Tiếp theo bạn vào View => Solution Explorer
Bạn cần đăng nhập để thấy đính kèm
Chuột phải vào SP2 chọn Properties.
Bạn cần đăng nhập để thấy đính kèm
Vào tab compile
Bạn cần đăng nhập để thấy đính kèm
Tích chọn vào Register for COM interop.
Bạn cần đăng nhập để thấy đính kèm
Vào Apllication => Assembly Information kiểm tra:
Bạn cần đăng nhập để thấy đính kèm
Nếu như dấu tích Make assembly COM-Visible được tích chọn rồi thì OK. Nếu chưa thì bạn phải tích chọn vào.
Vì Office của tôi là 64bit nên trước hết tôi muốn tạo DLL cho 64 bit.
Hãy tìm tới vùng trên này:
Bạn cần đăng nhập để thấy đính kèm
Chọn vào x64.
Xin lưu ý bướ này rất quan trọng. Bản thân tôi khi tham khảo, chạy hoài không được, thì ra chỗ này chính là nguyên nhân, họ không có nói cái này mà tôi phải tự lần mò ra, quá khổ sở!!!
Click vào Class1.vb để viết code:
Bạn cần đăng nhập để thấy đính kèm
Hãy dán đoạn code sau vào:
Mã:
Imports System
Namespace MyClass1
Public Class MyClass1
Public Function Hello(ByVal sName As String) As String
Return "Hello!! " & sName
End Function
End Class
End Namespace
Bạn cần đăng nhập để thấy đính kèm
Nó ra cảnh báo kệ nó thôi. Không sau đâu. Cứ ấn OK. File DLL được tạo ra rồi đấy.
2. Viết code trên Excel.
Mở Excel lên:
Bạn cần đăng nhập để thấy đính kèm
Tạo module mới. Vào Tools => References.
File DLL đã được đăng ký rồi cho nên tìm tới SP2 trong danh sách và tích chọn vào thôi.
Bạn cần đăng nhập để thấy đính kèm
Ấn OK.
Trên đó tôi viết code VBA như sau:
Mã:
Sub ab()
Dim a As New SP2.MyClass1
MsgBox a.Hello("OK")
End Sub
Bạn cần đăng nhập để thấy đính kèm
Nguồn tham khảo:
Bạn cần đăng nhập để thấy link