Tôi lập trình tạo DLL trong Delphi các hàm làm việc với mảng - array tốc độ chạy nhanh hơn VBA với cùng một thuật toán. Các bạn thử nghiệm trên máy tính của các bạn rồi cho kết quả nhé. Sự so sánh có thể khác nhau giữa các Office 32 hay 64-bit.
Tập tin "tuanfastcode.dll" là thư viện lập trình bằng Delphi, xuất các hàm APIs gồm
1. CopyArray: Copy hai mảng 2D với nhau
2. TransArray: Đảo chiều mảng 2D
3. FastSumArray: Tổng trong mảng 2D
Để chạy các hàm này cần copy thư viện như sau:
+ Nếu Windows 64 bit
Copy x86\tuanfastcode.dll vào C:\Windows\SysWow64\
Copy x64\tuanfastcode.dll vào C:\Windows\System32\
+ Nếu Windows 32 bit
Copy x86\tuanfastcode.dll vào C:\Windows\System32\
So sánh hàm viết trong DLL này với cách viết tương tự trong VBA.
Chạy mở file "TestTuanFastCode.xlsm", vào VBA chạy code để so sánh.
Tôi đã test với Windows 64-bit, Office365 32-bit
Tốc độ các hàm tôi viết trong Delphi đều nhanh hơn VBA, trong đó hàm FastSumArray nhanh gấp 4-5 lần. Các bạn có thể test để xem kết quả ra sao.
Download
Xem thêm: Hướng dẫn lập trình DLL tạo hàm API trong Delphi dùng trong VBA - Bảo mật code
Tác giác giả: Nguyễn Duy Tuân