CÔNG TY CỔ PHẦN BLUESOFTS

Hàm BS_AI dùng AI trong Excel để xử lý mảng


Hàm BS_AI trong Add-in A-Tools v10. Hàm gửi yêu cầu cùng mảng dữ liệu nguồn, mẫu ví dụ để AI phân tích rồi trả về mảng kết quả trên bảng tính Excel. Sử dụng các mô hình AI của Gemini, OpenAI,... Hàm dùng để giải quyết các yêu cầu tổng quát cho AI thực hiện. Thường dùng khi cần xử lý, tính toán cả mảng dữ liệu.

Cấu trúc hàm:

BS_AI(source, purpose, [sample], [result_type], [AI_type], [AI_Model], [API_KEY])

Các tham số trong [ ] có thể bỏ qua.

+ source

là dữ liệu nguồn. Có thể là một hoặc mảng giá trị.

+ [purpose]

Đưa ra yêu cầu cũng như mục đích cần đạt được. Ví dụ: "Lấy ra con số".

+ [sample]

là ví dụ mẫu để AI làm theo. Ví dụ: "số lượng 1000 kg, lấy ra con số 1000".

+ [result_type]

Nếu là 0 (ngầm định) hàm trả kết quả là mảng giá trị. Nếu là 1 hàm trả về văn bản. Tham số này có thể là chuỗi khai báo các thuộc tính với các khóa: RT, TEMP, TOPP, TOPK, MOT - Hãy bấm Help để xem hướng dẫn (các từ khóa này chỉ áp dụng nếu AI_type = 0 (Gemini AI)).

RT nhận giá trị kiểu số, nhận 0 (là hàm trả về mảng) hoặc 1 (hàm trả về văn bản) - Chính là result_type. Ví dụ "RT=0;"

TEMP: Kiểm soát tính ngẫu nhiên tổng thể của phản hồi. Giá trị cao hơn cho kết quả sáng tạo và bất ngờ hơn. Nhận giá trị từ 0.0 đến 1.0 (ký tự thập phân luôn là dấu chấm (.)). Ngầm định là "TEMP=0.8;".

TOPP: Kiểm soát sự ngẫu nhiên bằng cách xem xét một tập hợp các token có tổng xác suất tích lũy vượt quá một ngưỡng. Ngầm định là "TOPP=0.8;".

TOPK: Kiểm soát sự ngẫu nhiên bằng cách giới hạn số lượng token có xác suất cao nhất được xem xét. Ngầm định là "TOPK=40;".

MOT: Kiểm soát độ dài tối đa của phản hồi. Nếu không khai báo, giá trị là 8192 - "MOT=8192;"

Ví dụ khai báo để hàm trả về mảng và với tính ngẫu nhiên 80% là:
"RT=0; TEMP=0.8; TOPP=0.8; TOPK=40;"
(Đây chính là giá trị ngầm định của tham số result_type này nếu người dùng không khai báo.)

Nếu chỉ nhận một kết quả với xác suất cao nhất (không thay đổi các lần chạy):
"RT=0; TEMP=0; TOPP=0; TOPK=1;"

+ [AI_type]

Kiểu số. Nếu là 0 (ngầm định) dùng Google Gemini; 1 sử dụng OpenAI.

+ [AI_Model]

Là chuỗi mô tả loại Model sử dụng cho AI. Nếu bỏ qua hàm sử dụng Model ngầm định.

(*) Nếu AI_type là 0 - Google Gemini. AI_Model là một trong các giá trị dưới đây:
gemini-2.0-flash (ngầm định - Nếu tham số AI_Model để trống)
gemini-2.0-flash-lite
gemini-1.5-pro
...

(*) Nếu AI_type là 0 - OpenAI. AI_Model là một trong các giá trị dưới đây:
gpt-4o-mini (ngầm định - Nếu tham số AI_Model để trống)
gpt-4o
gpt-4o-audio-preview
gpt-4o-realtime-preview
gpt-4o-mini-audio-preview
gpt-4o-mini-realtime-preview
chatgpt-4o
---

+ [API_KEY]

Là chuỗi mã định danh bạn tạo từ nhà cung cấp AI. Nếu AI_Type là 1 (OpenAI) bắt buộc phải khai báo tham số này. Trường hợp khác không bắt buộc.

+ Nếu AI_Type là 0 (Google Gemini) thì tham số này có thể được bỏ qua. Bạn có thể tạo tham số của riêng mình và khai báo. Google Gemini hiện đang miễn phí.

+ Nếu AI_Type là 1 (OpenAI) thì tham số này là bắt buộc. Nếu không thì là tùy chọn. OpenAI được trả tiền dựa trên gói bạn chọn.

Tạo API_KEY của OpenAI
Tạo API_KEY của Google Gemini

Ví dụ

Video hướng dẫn




(Hướng dẫn dùng hàm BS_AI dùng AI xử lý mảng dữ liệu trên Excel)

Dữ liệu nguồn (source) A4:A6 là
 
Nguyễn 123 Duy Tuân
Trần Khánh 2000 SƠn
Sơn

Ví dụ 1: Tách sổ:

Mục đích (purpose) nhập tại D1: "Lấy ra con số"
Ví dụ mẫu (sample): "Số lượng 1000 kg, lấy ra con số 1000"

Công thức là:

=BS_AI(A4:A6,D1,D2)

Kết quả nhận được là:

123
2000
0


 
(*) Để sử dụng các hàm BS_AI, BS_AI_CHAT hãy cài Add-in A-Tools v10 cập nhật ngày 14-05-2025.

Hãy xem kỹ video hướng dẫn để hiểu cách tạo yêu cầu - Prompt để hàm BS_AI hiểu và thực hiện đúng yêu cầu của bạn.


(Dùng AI để tổng hợp dữ liệu trong Excel bằng hàm BS_AI)

Ví dụ 2: Dùng AI - hàm #BS_AI của Add-in A-Tools để phân tích logic của mảng.

Bài viết này tôi gửi các bạn ví dụ dùng AI để thực hiện yêu cầu đọc số thành chữ và đánh giá xếp loại theo điều kiện của bạn đưa ra.

Source: Có mảng điểm số tại B10:B13

Sample: Bạn có yêu cầu xếp loại tại vùng F10:F13 như sau:

Xếp loại các giá trị theo điều kiện:
Từ 0-4 là Kém
Từ 5-6 là Trung bình
Từ 7-8 là Khá
> 8 là Giỏi

Purpose (Yêu cầu): Trả về mảng kết quả gồm hai cột: đọc số thành chữ, xếp loại.

Công thức là:
=BS_AI(B10:B16,"Trả về mảng kết quả gồm hai côt: đọc số thành chữ, xếp loại.",F10:F13)

Kết quả như hình dưới đây
 




VÍ DỤ VỀ TỔNG HỢP, GỘP DỮ LIỆU BẰNG AI

Phương pháp đặt yêu cầu để BS_AI tổng hợp dữ liệu, ghép thông tin các bảng

Giả thiết tôi có hai bảng dữ liệu ở hai vùng gồm:
B2:C8 là mảng chứa thông tin bán hàng của nhân viên gồm hai cột MANV, AMOUNT
J2:K5 là mảng chứa thông tin nhân viên - Danh mục nhân viên, gồm hai cột: MANV, TEN NV


Bây giờ thực hiện các yêu cầu tổng hợp dữ liệu như sau

Ví dụ 1: Tính tổng AMOUNT nhóm theo MANV

Công thức là:
=BS_AI(B2:C8, E2)

Kết quả nhận được là:


Các bạn thấy việc dùng hàm BS_AI là dùng AI để phân tích và tính toán. Cụ thể là trường hợp này BS_AI dùng AI Gemini để phân tích kết hợp với các giải thuật để trra về mảng kết quả trên bảng tính Excel. Nếu bạn muốn dùng OpenAI thực hiện thì công thức như sau:

=BS_AI(B2:C8,E2,,,1,,"API_KEY")

(AI_type là 1 tức dùng OpenAI; nếu là 0 (hoặc không nhập - ngầm định) thì dùng Gemini;

API_KEY là chuỗi định danh theo loại AI, bạn phải tạo nếu dùng OpenAI, với Gemini không bắt buộc do Add-in A-Tools dùng API_KEY của nó, bạn cũng có thể tự tạo riêng nếu cần.)

Phương pháp dùng AI - Hàm BS_AI là dùng ngôn ngữ con người để yêu cầu hàm trả về kết quả. Có thể dùng tiếng Việt, tiếng Anh hay ngôn ngữ quốc gia nào đó. Bạn hỏi thật rõ ý, ngắn gọn để AI hiểu.

Ví dụ 2: Tính tổng AMOUNT nhóm theo MANV. Lấy thêm cột TEN NV tìm theo MANV trong mảng J2:K5

Phân tích:

Nguyên tắc cua các hàm BS_AI, BS_AI_CHAT, BS_AI_* của Add-in A-Toos, khi chỉ định địa chỉ vùng bạn phải đưa địa chỉ vào hàm CELL. Vì vậy câu yêu cầu bạn phải sửa lại là:

"Tính tổng AMOUNT nhóm theo MANV. Lấy thêm cột TEN NV tìm theo MANV trong mảng CELL(J2:K5)" 

Ví dụ này tôi vẫn tổng hợp nhóm theo MANV như Ví dụ 1, nhưng ghép thêm thông tin là tên nhân viên bên bảng J2:K5

Vì là cần ghép thông tin hai bảng để lấy thêm cột TEN NV nên chúng ta phải khai báo thông tin có quan hệ hai bảng đó là MANV. Trong thiết kế dữ liệu gọi đây là khóa liên kết. Với AI ta nên đặt tên hai cột này chung một tên "MANV" mục đích để dẫn AI hiểu đó là thông tin chung để nó tìm kiếm.

Chú ý: khi mô tả địa chỉ vùng trên bảng tính Excel trong câu yêu cầu (Purpose/Prompt) bạn phải dùng hàm CELL(Range, HeaderRow).
Các tham số của hàm CELL:
+ Range: là vùng địa chỉ/mảng dữ liệu nguồn mà AI dùng làm cơ sở phân tích, tính toán. 
HeaderRow: ngầm định tham số HeaderRow là 0 - vùng không có tiêu đề; 1 - dòng đầu tiên của vùng là tiêu đề; 2 - cột đầu tiên của vùng là tiêu đề.

Trong câu yêu cầu nếu ghi "trong mảng J2:K5" AI sẽ không hiểu, bạn phải ghi là "trong mảng CELL(J2:K5)" là đúng.

Công thức:
=BS_AI(B2:C8,E9)

Kết quả:


Ví du 3: Ghép mảng CELL(B2:C8) vơí CELL(J2:K5) khóa liên kết là MANV

Phân tích: với yêu cầu này thì trong câu yêu cầu đã mô tả hai vùng dữ liệu là B2:C8 và J2:K5 nên tham số đầu tiên của hàm BS_SAI là source không cần chỉ định, bạn chỉ cần nhập "" là được. Từ khóa bạn dùng trong yêu cầu này phải có "khóa liên kết là MANV" mục đích để báo cho AI biết trường thông tin để tìm kiếm.

Công thức:
=BS_AI("", E16)

Kết quả là:


Bạn thấy việc dùng hàm BS_AI của Add-in A-Tools để tính toán rất đơn giản, chỉ cần dùng ngôn ngữ con người đê yêu cầu. AI hiện tại không phải làm được tất cả những cái bạn yêu cầu, nhưng sẽ có rất nhiều các yêu cầu thực tế của bạn sẽ được thực hiện chỉ cần bạn biết cách hỏi.