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
Xu hướng mới của trí tuệ nhân tạo (AI) trong năm 2025

Cập nhật các xu hướng mới nhất về trí tuệ nhân tạo AI năm 2025 như GPT-5, video AI, giáo dục thông minh và chiến lược AI tại Việt Nam. Trí

Xem thêm
AI và 5 ứng dụng thực tiễn trong năm 2025

Năm 2025 đánh dấu một bước ngoặt quan trọng trong hành trình ứng dụng trí tuệ nhân tạo (AI) vào đời sống và công việc. Những tiến bộ trong công nghệ đã

Xem thêm
Focus Cell trong Excel – Tính năng giúp tăng khả năng điều hướng

Đã bao giờ bạn lạc trôi giữa hàng trăm dòng, hàng ngàn cột trên Excel… mà không biết mình đang ở đâu? Nếu “mất phương hướng” là cảm giác quen thuộc

Xem thêm
Trí tuệ nhân tạo AI là gì? Khái niệm, phân loại và vai trò trong cuộc sống

Trong thời đại cách mạng công nghiệp 4.0, trí tuệ nhân tạo AI đang trở thành một phần không thể thiếu trong nhiều lĩnh vực của cuộc sống. Từ các trợ

Xem thêm