VBA - Các biến

Variablelà một vị trí bộ nhớ được đặt tên được sử dụng để chứa một giá trị có thể thay đổi trong quá trình thực thi tập lệnh. Sau đây là các quy tắc cơ bản để đặt tên một biến.

  • Bạn phải sử dụng một chữ cái làm ký tự đầu tiên.

  • Bạn không thể sử dụng dấu cách, dấu chấm (.), Dấu chấm than (!) Hoặc các ký tự @, &, $, # trong tên.

  • Tên không được vượt quá 255 ký tự.

  • Bạn không thể sử dụng các từ khóa dành riêng cho Visual Basic làm tên biến.

Syntax

Trong VBA, bạn cần khai báo các biến trước khi sử dụng chúng.

Dim <<variable_name>> As <<variable_type>>

Loại dữ liệu

Có nhiều kiểu dữ liệu VBA, có thể chia thành hai loại chính, đó là kiểu dữ liệu số và không phải kiểu số.

Kiểu dữ liệu số

Bảng sau hiển thị các kiểu dữ liệu số và phạm vi giá trị được phép.

Kiểu Phạm vi giá trị
Byte 0 đến 255
Số nguyên -32,768 đến 32,767
Dài -2.147.483.648 đến 2.147.483.648
Độc thân

-3.402823E + 38 đến -1.401298E-45 cho các giá trị âm

1,401298E-45 đến 3,402823E + 38 cho các giá trị dương.

Gấp đôi

-1,79769313486232e + 308 đến -4,94065645841247E-324 cho các giá trị âm

4.94065645841247E-324 đến 1.79769313486232e + 308 cho các giá trị dương.

Tiền tệ -922.337.203.685.477.5808 đến 922.337.203.685.477.5807
Thập phân

+/- 79,228,162,514,264,337,593,543,950,335 nếu không sử dụng số thập phân

+/- 7.9228162514264337593543950335 (28 chữ số thập phân).

Các kiểu dữ liệu không phải số

Bảng sau hiển thị các kiểu dữ liệu không phải số và phạm vi giá trị được phép.

Kiểu Phạm vi giá trị
Chuỗi (độ dài cố định) 1 đến 65.400 ký tự
Chuỗi (độ dài thay đổi) 0 đến 2 tỷ ký tự
Ngày 1 tháng 1, 100 đến 31 tháng 12, 9999
Boolean Đúng hay sai
Vật Bất kỳ đối tượng nhúng nào
Biến thể (số) Bất kỳ giá trị nào lớn gấp đôi
Biến thể (văn bản) Giống như chuỗi có độ dài thay đổi

Example

Hãy để chúng tôi tạo một nút và đặt tên là 'Variables_demo' để chứng minh việc sử dụng các biến.

Private Sub say_helloworld_Click()
   Dim password As String
   password = "Admin#1"

   Dim num As Integer
   num = 1234

   Dim BirthDay As Date
   BirthDay = DateValue("30 / 10 / 2020")

   MsgBox "Passowrd is " & password & Chr(10) & "Value of num is " &
      num & Chr(10) & "Value of Birthday is " & BirthDay
End Sub

Output

Sau khi thực thi tập lệnh, đầu ra sẽ như thể hiện trong ảnh chụp màn hình sau.