**Giới thiệu thư viện COM Dictionary – DictHelper.dll** (4 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

Tôi tuân thủ nội quy khi đăng bài

phuongnam366377

Thành viên thường trực
Tham gia
25/10/19
Bài viết
208
Được thích
220
**Giới thiệu thư viện COM Dictionary – DictHelper.dll**


DictHelper.dll là một thư viện COM do Kieu Manh phát triển bằng Embarcadero C++ Builder, kế thừa trực tiếp từ lớp TDictionary<TKey, TValue> trong System.Generics.Collections của Delphi. Thư viện này cung cấp một đối tượng Dictionary mạnh mẽ, cho phép lưu trữ và thao tác dữ liệu theo cặp key–value một cách trực quan, hiệu quả và tương thích hoàn toàn với VBA, Excel, VBScript và các ứng dụng COM-based khác.

Tác giả: Kieu Manh + ChatGPT trợ giúp viết mã và viết bài

DictHelper được xây dựng trên nền tảng Delphi Runtime Library (RTL), tận dụng sức mạnh của Generics Collections – một phần không thể thiếu của Delphi hiện đại. Việc kế thừa từ TDictionary giúp đảm bảo hiệu năng cao, quản lý bộ nhớ tối ưu, và hỗ trợ đầy đủ các thao tác cơ bản và nâng cao của Dictionary. Xin trân trọng cảm ơn các kỹ sư Delphi đã xây dựng nên nền tảng tuyệt vời này.

**Tính năng nổi bật:**

– Tương thích hoàn toàn với VBA và Excel
– Hỗ trợ cú pháp For Each để duyệt dữ liệu
– Lưu trữ dữ liệu động với kiểu Variant
– Dễ dàng tích hợp vào macro, automation, hoặc ứng dụng COM

**Các phương thức và thuộc tính hỗ trợ:**

1. Add(key, value): Thêm một cặp key–value vào dictionary. Nếu key đã tồn tại, giá trị sẽ được cập nhật.
2. GetItem(key): Truy xuất giá trị tương ứng với key đã cho.
3. Remove(key): Xóa một key và giá trị tương ứng khỏi dictionary.
4. Exists(key): Kiểm tra xem key có tồn tại trong dictionary hay không. Trả về True hoặc False.
5. Count: Trả về tổng số phần tử hiện có trong dictionary.
6. Item(key): Truy xuất hoặc gán giá trị trực tiếp bằng cú pháp dict(key) = value.
7. Hỗ trợ For Each trong VBA để duyệt qua tất cả các key.

**Ví dụ sử dụng trong VBA:**
Mã:
Sub DemoDictHelper()
 Dim dict As Object
 Set dict = CreateObject("DictHelper.Dictionary")

 dict.Add "Name", "Kieu"
 dict.Add "City", "Lai Thieu"

 If dict.Exists("Name") Then
  MsgBox "Tên: " & dict.GetItem("Name")
 End If

 Debug.Print "Tổng số phần tử: " & dict.Count

 Dim key As Variant
 For Each key In dict
  Debug.Print key & " = " & dict(key)
 Next
End Sub
**Cài đặt và đăng ký:**

– Copy DictHelper.dll vào thư mục hệ thống hoặc thư mục dự án
– Đăng ký DLL bằng lệnh: regsvr32 DictHelper.dll
– Sử dụng CreateObject("DictHelper.Dictionary") trong VBA để khởi tạo đối tượng

**Ứng dụng thực tế:**

– Lọc dữ liệu trùng lặp trong Excel
– Thống kê tần suất xuất hiện
– Tạo bảng ánh xạ key–value động
– Tích hợp vào quy trình automation hoặc báo cáo

DictHelper không chỉ là một thư viện tiện ích – nó là cầu nối giữa sức mạnh của Delphi và sự linh hoạt của VBA. Nếu bạn là lập trình viên Excel, người dùng VBScript, hoặc đang tìm giải pháp lưu trữ dữ liệu linh hoạt trong COM, DictHelper.dll là một lựa chọn đáng tin cậy và dễ triển khai.

---
Thong thả và thư giản khi có gió giới thiệu lên Github + ví dụ sử dụng và DLL sau
 

Bài viết mới nhất

Back
Top Bottom