Hàm AI, mạng và hình vẽ
Nhóm này gồm 8 hàm vượt ra ngoài phạm vi bảng tính: gọi AI giải thích công thức, dịch văn bản, lấy giá cổ phiếu và tỷ giá trực tuyến, tạo mã QR, chèn ảnh hiện trường vào ô, tô màu và di chuyển hình vẽ trên trang tính.
Các ví dụ dưới đây dùng dấu chấm phẩy ; để ngăn cách tham số (Excel chạy trên Regional format Việt Nam). Nếu máy bạn dùng định dạng English (US), hãy gõ dấu phẩy , thay cho ;.
Bảng tra nhanh:
| Hàm | Công dụng |
|---|---|
dvdAIExplain | Nhờ AI giải thích công thức Excel trong một ô. |
dvdTranslate | Dịch văn bản bằng Google Translate. |
dvdStock | Lấy giá cổ phiếu Việt Nam theo mã. |
DVDFx | Lấy tỷ giá ngoại tệ, hôm nay hoặc theo ngày. |
dvdQR | Tạo mã QR từ chuỗi văn bản và chèn vào ô. |
dvdPic | Chèn ảnh vào ô, tự co giãn theo kích thước ô. |
dvdColorShapes | Đổi màu và độ trong suốt của nhiều hình theo danh sách. |
dvdMoveShape | Di chuyển một hình đến tọa độ mới trên trang tính. |
dvdAIExplain
Gửi công thức của một ô cho AI và nhận về phần giải thích bằng Tiếng Việt.
Cú pháp:
=dvdAIExplain(cell_formula; [Detail])| Tham số | Bắt buộc | Mô tả |
|---|---|---|
cell_formula | Có | Ô chứa công thức cần giải thích. |
Detail | Không | TRUE = giải thích chi tiết (mặc định), FALSE = giải thích ngắn gọn. |
Ví dụ:
=dvdAIExplain(F42; FALSE)
// → "Công thức nhân khối lượng ở cột D với đơn giá ở cột E rồi làm tròn 0 chữ số."Lưu ý
- Cần API key Gemini khai báo trong Tùy chọn của DVDAddin và cần kết nối mạng.
- Hàm chạy bất đồng bộ: ô hiển thị
#N/A waiting...trong lúc chờ, sau đó tự cập nhật kết quả. - Tham số phải là tham chiếu tới ô chứa công thức; nếu ô không có công thức, hàm trả về
Ô không chứa công thức MS Excel.
dvdTranslate
Dịch một đoạn văn bản sang ngôn ngữ khác bằng Google Translate — dùng cho hồ sơ song ngữ, thư gửi tư vấn nước ngoài.
Cú pháp:
=dvdTranslate(Text; FromLang; ToLang)| Tham số | Bắt buộc | Mô tả |
|---|---|---|
Text | Có | Văn bản cần dịch. |
FromLang | Có | Mã ngôn ngữ gốc, ví dụ "vi", "en". |
ToLang | Có | Mã ngôn ngữ đích. |
Ví dụ:
=dvdTranslate(B6; "vi"; "en")
// → "Concrete works for foundation M1"
=dvdTranslate("Biên bản nghiệm thu công việc xây dựng"; "vi"; "en")
// → "Minutes of acceptance of construction work"Lưu ý
- Cần kết nối mạng; khi không lấy được kết quả hàm trả về
#VALUE!. - Nên dùng cho từng ô riêng lẻ; kéo công thức cho hàng trăm dòng cùng lúc sẽ chậm và dễ bị chặn.
dvdStock
Lấy giá cổ phiếu Việt Nam theo mã chứng khoán.
Cú pháp:
=dvdStock(MaSIC; [match_mode])| Tham số | Bắt buộc | Mô tả |
|---|---|---|
MaSIC | Có | Mã cổ phiếu, ví dụ "VCB". |
match_mode | Không | 1 = nguồn PriceBoard.vcbs.com.vn (mặc định), 2 = nguồn quotes.vcbs.com.vn. |
Ví dụ:
=dvdStock("VCB")
// → 92500 (giá khớp gần nhất, đơn vị đồng)
=dvdStock(B6; 2)
// → giá lấy từ nguồn dự phòng khi nguồn mặc định không phản hồiLưu ý
- Cần kết nối mạng; không tra được mã thì hàm trả về
#N/A. - Chế độ
1quy đổi giá bảng sang đồng (nhân 1.000).
DVDFx
Lấy tỷ giá quy đổi giữa hai loại tiền, theo tỷ giá mới nhất hoặc theo một ngày trong quá khứ.
Cú pháp:
=DVDFx(from; to; [date])| Tham số | Bắt buộc | Mô tả |
|---|---|---|
from | Có | Mã tiền nguồn, ví dụ "USD", "EUR". |
to | Có | Mã tiền đích, ví dụ "VND", "JPY". |
date | Không | Ngày của tỷ giá, dạng yyyy-MM-dd hoặc dd/MM/yyyy; bỏ trống là tỷ giá mới nhất. |
Ví dụ:
=DVDFx("USD"; "VND")
// → 25.400 (tỷ giá mới nhất, dùng quy đổi giá trị hợp đồng ngoại tệ)
=DVDFx("USD"; "VND"; "2026-06-30")
// → tỷ giá chốt kỳ thanh toán ngày 30/06/2026Lưu ý
- Cần kết nối mạng; hàm chạy bất đồng bộ nên ô hiển thị
#N/A waiting...trong lần lấy đầu tiên. - Kết quả được lưu đệm một giờ cho mỗi cặp tiền và mỗi ngày, các lần tính lại sau đó trả kết quả tức thì.
- Hai mã tiền giống nhau trả về
1; mã tiền để trống trả về#VALUE!.
dvdQR
Tạo mã QR từ một chuỗi văn bản và chèn hình vào ô chứa công thức.
Cú pháp:
=dvdQR(Text; [charsetName])| Tham số | Bắt buộc | Mô tả |
|---|---|---|
Text | Có | Chuỗi văn bản cần chuyển sang mã QR. |
charsetName | Không | Bộ ký tự, mặc định "UTF-8" (giữ dấu Tiếng Việt); truyền "Shift_JIS" để dùng bộ ký tự Nhật, khi đó dấu Tiếng Việt bị bỏ. |
Ví dụ:
=dvdQR(A6)
// → mã QR chứa mã hiệu cấu kiện, dán lên tem nhận diện tại công trường
=dvdQR("https://hoso.congtrinh.vn/bb/BB-2026-0142")
// → mã QR mở nhanh biên bản nghiệm thu trên điện thoạiLưu ý
- Hàm trả về chuỗi rỗng; sản phẩm thật là hình QR được chèn vào ô, căn giữa theo vùng gộp của ô.
- Ảnh cũ nằm chồng lên ô sẽ bị xóa trước khi chèn ảnh mới.
dvdPic
Chèn ảnh từ đường dẫn vào ô, tự co giãn vừa khít ô và chừa khoảng trống nếu cần.
Cú pháp:
=dvdPic(ImgPath; [FitMode]; [Space]; [Extensions])| Tham số | Bắt buộc | Mô tả |
|---|---|---|
ImgPath | Có | Đường dẫn tới hình ảnh; đường dẫn tương đối được hiểu là thư mục chứa file Excel. |
FitMode | Không | TRUE = co giãn theo ô (mặc định). |
Space | Không | Khoảng trống quanh ảnh, tính bằng pixel. |
Extensions | Không | Đuôi file mặc định khi đường dẫn không ghi đuôi, mặc định ".jpg". |
Ví dụ:
=dvdPic("Anh\BB-0142-01.jpg")
// → chèn ảnh hiện trường vào ô của phụ lục ảnh nghiệm thu
=dvdPic(B6; TRUE; 6)
// → ảnh theo tên file ở ô B6, chừa 6 px viền quanh ảnhLưu ý
- Ô công thức hiển thị chuỗi rỗng; ảnh được vẽ ngay sau khi Excel tính xong, nên có thể xuất hiện trễ một nhịp.
- Khi in hoặc xuất PDF hàng loạt, hãy dùng chức năng in của DVDAddin để ảnh được cập nhật trước khi xuất, tránh in ra ảnh của lần trước.
- Mỗi ô chỉ giữ một ảnh: ảnh cũ của chính ô đó bị xóa trước khi vẽ ảnh mới.
- File Excel đang nằm trên OneDrive/SharePoint chưa đồng bộ về máy sẽ khiến hàm trả về thông báo bắt đầu bằng
ERR:.
dvdColorShapes
Đổi màu nền và độ trong suốt cho nhiều hình trên một trang tính theo danh sách tên hình và mã màu.
Cú pháp:
=dvdColorShapes(ShapeList; [TargetSheetName]; [ShapeTransparency])| Tham số | Bắt buộc | Mô tả |
|---|---|---|
ShapeList | Có | Phạm vi hai cột: cột tên hình và cột mã màu RGB. |
TargetSheetName | Không | Tên sheet chứa các hình; bỏ trống là sheet đang mở. |
ShapeTransparency | Không | Độ trong suốt từ 0 đến 1, mặc định 0. |
Ví dụ:
=dvdColorShapes($H$6:$I$40; "Mat bang"; 0.2)
// → "Done", tô màu các phân khu trên mặt bằng theo tiến độ hoàn thànhLưu ý
- Cột mã màu phải là số RGB; giá trị không hợp lệ khiến hàm trả về
Cột mã màu không hợp lệ.. - Tên sheet không tồn tại sẽ trả về thông báo
Sheet '<tên>' không tồn tại.. - Hình có tên không tìm thấy sẽ được bỏ qua, các hình còn lại vẫn được tô.
dvdMoveShape
Di chuyển một hình vẽ, hình ảnh hoặc textbox tới tọa độ mới trên trang tính.
Cú pháp:
=dvdMoveShape(ShapeName; NewPosition; [TargetSheet])| Tham số | Bắt buộc | Mô tả |
|---|---|---|
ShapeName | Có | Tên hình cần di chuyển. |
NewPosition | Có | Vị trí mới ở dạng chuỗi "Top;Left". |
TargetSheet | Không | Tên sheet chứa hình; bỏ trống là sheet đang mở. |
Ví dụ:
=dvdMoveShape("MuiTenTienDo"; "120;340"; "Tien do")
// → TRUE, đưa mũi tên mốc thời gian tới đúng vị trí tuần hiện tại
=dvdMoveShape("Cau_thap"; H6 & ";" & I6)
// → di chuyển hình cần trục theo tọa độ tính trong hai ô H6 và I6Lưu ý
- Chuỗi vị trí luôn dùng dấu chấm phẩy giữa
TopvàLeft, không phụ thuộc Regional format. - Hàm trả về
TRUEkhi di chuyển thành công,FALSEkhi sai tên hình, sai định dạng vị trí hoặc sai tên sheet.