Nếu bạn đã từng lập trình bất kỳ macro nào, có lẽ bạn đã quen với cách xác định biến bằng từ khóa Dim. Ví dụ, bạn có thể định nghĩa một biến số nguyên với tên MyVar như sau:

Dim MyVar As Integer

Điều này rất đơn giản và sẽ hoạt động tốt trong mã của bạn. Tuy nhiên, bạn có thể bị cám dỗ để xác định nhiều biến trên mỗi dòng:

Dim x, y, z As Integer

Trong một số phiên bản của ngôn ngữ BASIC, điều này sẽ xác định và khởi tạo ba biến, mỗi biến dưới dạng số nguyên. Trong VBA, nó cũng chạy đúng cách và không có lỗi nào được tạo ra. Tuy nhiên, có một vấn đề nhỏ – chỉ có biến cuối cùng (z) thực sự được định nghĩa là một số nguyên.

Bạn có thể thấy cách này hoạt động bằng cách sử dụng mã sau:

Sub DimTest()

Dim x, y, z As Integer     MsgBox "x is type " & VarType(x)

MsgBox "y is type " & VarType(y)

MsgBox "z is type " & VarType(z)

End Sub

Khi bạn chạy macro, hai hộp thông báo đầu tiên bật lên cho thấy rằng loại biến cho x và y là 0, có nghĩa là chưa được khởi tạo.

Chỉ hộp thông báo cuối cùng (cho z) hiển thị kiểu biến là 2, nghĩa là một số nguyên.

Giải pháp là đảm bảo rằng bạn khai báo một biến trên mỗi dòng, hoặc sử dụng cú pháp đầy đủ cho từng biến, như sau:

Dim x As Integer, y As Integer, z As Integer

_Lưu ý: _

Nếu bạn muốn biết cách sử dụng các macro được mô tả trên trang này (hoặc trên bất kỳ trang nào khác trên các trang WordTips), tôi đã chuẩn bị một trang đặc biệt bao gồm thông tin hữu ích.

WordTips là nguồn của bạn để đào tạo Microsoft Word hiệu quả về chi phí.

(Microsoft Word là phần mềm xử lý văn bản phổ biến nhất trên thế giới.) Mẹo này (12098) áp dụng cho Microsoft Word 2007, 2010, 2013, 2016, 2019 và Word trong Office 365. Bạn có thể tìm thấy phiên bản của mẹo này cho giao diện menu cũ hơn của Word tại đây: