Cách đánh giá chuỗi dưới dạng mã bằng Excel VBA

Trong bài viết này, UniTrain sẽ hướng dẫn bạn 2 cách để đánh giá chuỗi dưới dạng mã bằng Excel VBA. Để thực hiện thao tác, người dùng sẽ sử dụng hàm EVALUATE trong VBA, vì nó thường chuyển đổi chuỗi thành số hoặc giá trị.

Đánh giá chuỗi dưới dạng mã để tìm kết quả của một ô bằng VBA

Giả sử, người dùng có tập dữ liệu gồm Products của một cửa hàng, Unit Price và Units.

Người dùng phải tìm tổng giá từ tập dữ liệu đó. Thay vì áp dụng công thức (có dấu “=”), bạn chỉ cần chèn chuỗi văn bản của công thức và đánh giá chuỗi đó dưới dạng mã. Người dùng đánh giá từng ô đơn lẻ và tìm kết quả từ chuỗi văn bản.

Cách thao tác:

1. Trước hết, hãy chèn chuỗi không có dấu “=”. Ví dụ Monitor có đơn giá 5000 và bán được 2 chiếc. Nếu sử dụng công thức, bạn nên nhập “=5000*2” để tính tổng giá. Tuy nhiên, người dùng chỉ cần nhập “5000*2” để đánh giá chuỗi này. Bằng cách này, hãy điền tương tự cho các ô còn lại.

VBA Evaluate String as Code

2. Đánh giá các chuỗi này bằng hàm EVALUATE trong VBA. Hãy nhấn ALT+F11 để mở cửa sổ Visual Basic Editor.

3. Chọn Insert > Module để mở cửa sổ Module. Gán mã vào trong cửa sổ đó bằng cách nhập:

Sub TestingEvaluate()
  Dim frng As Range
  Set frng = Range("E5")
  ActiveCell = Evaluate(frng.Value)
End Sub

VBA Evaluate String as Code

Mã này sẽ đánh giá một chuỗi trong ô E5.

4. Sau khi chạy mã, bạn sẽ thấy ô chứa chuỗi “5000*2” đã được chuyển đổi thành 10000. Bằng cách này, bạn có thể đánh giá một chuỗi để nhận kết quả mà không cần áp dụng công thức (tức là dấu “=”).

VBA Evaluate String as Code

Ở đây, mã chỉ áp dụng cho một ô. Nếu bạn muốn áp dụng mã cho nhiều ô, thì phải thay đổi tham chiếu ô và Run để chạy mã.

Sử dụng hàm VBA EVALUATE để định dạng chuỗi

Bạn cũng có thể sử dụng hàm EVALUATE để định dạng chuỗi. Hãy xem xét tập dữ liệu trước đó.

Giả sử,người dùng muốn Bold (in đậm) hàng số 8 (tức là hàng Grand Total) bằng cách sử dụng hàm EVALUATE. Hãy thao tác:

1. Mở cửa sổ Module theo các bước được nêu trong Method 1.

2. Chèn mã:

Sub TestingEvaluateFormat()
  Dim rfBld As String
  Worksheets("Sheet2").Activate
  rfBld = "C8:E8"
  Application.Evaluate(rfBld).Font.Bold = True
End Sub

VBA Evaluate String as Code

Ở đây, người dùng sử dụng C8:E8 làm tham chiếu ô để in đậm giá trị của các ô này.

3. Run mã. Mã sẽ đánh giá chuỗi đó và in đậm các chuỗi được tham chiếu.

Xem thêm

Khóa học Ứng dụng VBA trong Excel

Cách thêm Combo Box trong Excel bằng VBA

Cách mở tệp PowerPoint hiện có từ Excel VBA

Cách tạo mục lục bằng VBA trong Excel

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

1 + 1 = ? (Nhập Haii để trả lời đúng)

Bài viết liên quan
Phân biệt hàm SUM, SUMX và CALCULATE trong Power BI

1. Giới thiệu Trong Power BI, DAX (Data Analysis Expressions) cung cấp nhiều hàm để tổng hợp và phân tích dữ liệu. Ba trong số các hàm quan trọng nhất là

Xem thêm
[RECAP] Buổi Training vòng 2: IFRS 15 – Revenue from contracts with customers – Cuộc thi The Audit Proud 2025 – CLB Kế toán – Kiểm toán FAC – Trường Đại học Ngoại Thương CSII TP. HCM

Chiều tối ngày 24/04/2025, buổi Training Vòng 2 của cuộc thi The Audit Proud 2025 với chủ đề “IFRS 15 – Revenue from Contracts with Customers” đã diễn ra thành công

Xem thêm
Thêm và Xóa phần tử trong Numpy

NumPy là thư viện Python phổ biến dùng để xử lý dữ liệu dạng mảng nhiều chiều và thực hiện tính toán khoa học. Việc thêm hoặc xóa phần tử trong

Xem thêm
[RECAP] Cuộc thi học thuật Tiếng Anh chuyên ngành AKKOLOGY 2025 – CLB Kế toán – Kiểm toán (A²C) – Đại học Kinh tế TP. HCM (UEH)

Ngày 15/04/2025, Chung kết cuộc thi AKKOLOGY 2025 – sân chơi học thuật tiếng Anh chuyên ngành Kế toán – Kiểm toán do CLB A²C thuộc Đại học Kinh tế TP.HCM

Xem thêm