Thử nghiệm Addin XLL VISUAL STUDIO 2015

USA_Covid19

Thành viên tích cực
Mình đang nghiên cứu về addin xll cho excel các bạn thử xem nó chạy có ổn định không nhé !
Office 32 bit link:
Ofice 64bit link:
Yêu cầu để chạy được file: netframe 4.5.2 trở lên
Hướng dẫn: copy file bỏ vào thư mục addin của excel như những addin excel bình thường.
Giao diện addin:
Bạn cần đăng nhập để thấy hình ảnh
 

NhanSu

Thành Viên Nổi Bật

Có nhiều loại addin cho excel, mình xin chia sẻ những điều theo ý mình hiểu:
- Addin viết bằng VBA (file .xla, .xlam)
- COM addin: không chứa UDF để gõ công thức trực tiếp trong cell, MS đặt ra một khuôn mẫu (interface) IDTExtensibility2 mà tất cả COM addin bắt buộc phải thực hiện (implement). IDTExtensibility bao gồm các phương thức như OnConnection, OnDisconnection... Các COM addin tương tác với excel thông qua các phương thức này.
VSTO addin cũng là COM addin nhưng đơn giản hơn. VSTO đã tự implement IDTExtensibility2, ta không cần viết các method OnConnection,... nữa, thay vào đó VSTO đưa ra interface mới là IStartUp chỉ bao gồm method Startup và Shutdown.
Một số phần mềm để tạo addin cũng tương tự như VSTO, chẳng hạn Addin Express. Đây là phần mềm khá mạnh, tạo được nhiều loại addin, tuy nhiên giá cao.
- Automation addin: có thể tạo UDF để gõ công thức trên cell. Addin này có thể tạo bằng VB6 (ActiveX DLL) hay .NET (ví dụ với C# là project class library)
- XLL addin, thực chất là các DLL, có thể tạo UDF để gõ trên cell. Để tạo XLL có thể dùng C++ hoặc .NET với Excel DNA hay Addin express. Về mặt kỹ thuật, mình chưa phân biệt rõ được automation addin và xll.
- Web addin: sử dụng HTML, JavaScript để tạo, phục vụ chạy đa nền tảng: Windows, Mac, web.
 

USA_Covid19

Thành viên tích cực
Mình thấy addin dạng này bảo mật rất tốt vì hiện tại mình chưa biết cách xem mã nguồn của nó nên đang nghiên cứu về nó để trãi nghiệm !
 

Ngày Mới

Thành viên
Máy mình Test trên nền Win 7 - 64bit thấy hoạt động tốt nhé. XLL đúng là có khả năng bảo mật code khá tốt. Cũng dễ hiểu, nó hoạt động tương tự như DLL, Excel sẽ chỉ gọi các tài nguyên bên trong file để sử dụng. Nhưng sẽ có ưu và nhược.

1. Ưu điểm: Dễ sử dụng, hoạt động không cần thêm 1 file DLL mà chỉ cần mở là dùng, giống như .xlam bình thường. Khả năng bảo mật là cao, khó biên dịch.

2. Nhược điểm: Nếu có ý định chia sẽ cho nhiều người dùng thì sẽ cần viết Code cực kỹ. Khó thao tác, sữa chữa khi người dùng gặp lỗi. Viết trên ngôn ngữ C/C++.
 

NhanSu

Thành Viên Nổi Bật

@USA_Covid19 bạn sử dụng công cụ gì để tạo addin vậy? Mình biết một số công cụ như addin express hay excel dna có thể tạo xll từ .NET. Vấn đề bảo mật mình cũng thích nhưng không có khả năng và thời gian tìm hiểu, nhìn code đã pack là thấy ngại rồi.
 

USA_Covid19

Thành viên tích cực
Tool mở khóa tất cả các sheet và tool ẩn hiện sheet bằng addin xll
link office 32:
link ofice64:
Bạn cần đăng nhập để thấy đa phương tiện
 
Sửa lần cuối:

Ngày Mới

Thành viên
Rất hay, mình test và thấy Tool hoạt động tốt. Tool chạy nhanh, nhưng có một chút khó khăn khi mở khóa sheet. Sheet mở khóa sẽ bị copy, tạo thành file mới và mở ra trong khi file cũ vẫn đang mở. Theo góc độ của mình, chỉ cần mở khóa cho file đang mở là đc. Còn nếu tạo ra file mới, thì nó phải là dạng Tool chọn file, khi mà ta có thể select file cần mở khóa.

Chút góp ý nhỏ góc độ cá nhân mong Tool tốt hơn
 

USA_Covid19

Thành viên tích cực
@Ngày Mới đúng vậy bạn, thật ra thiết kế ban đầu là chọn file cần mở nhưng thấy hơi bất tiện cho những file đang mở cần chỉnh sữa mà phải chọn lại file đó nên mặc định mình để activeworkbook luôn, còn về phần tạo ra file mới thì cũng có nhiều lý do !
-phòng trường hợp file bị lỗi sau mở khóa !
-vì addin nên nếu đóng file đang mở để ghi đè lên thì addin sẽ tắt dẫn đến lỗi !
-Có thể làm dc như ý tưởng của bạn nhưng file phải đang đóng !
 

USA_Covid19

Thành viên tích cực
Bổ sung thêm tính năng di chuyển nhanh tới sheet và tạo unviewable cho file đang mở hỗ trợ xlsm, xlsb, xls link update bài #9
 
Top