Biến và kiểu dữ liệu trong VBA

Biến và kiểu dữ liệu trong VBA Access giúp bạn học lập trình cơ bản tốt hơn

  1. Biến trong VBA là gì ?
  2. Máy tính làm gì khi chạy qua lệnh khai báo biến
  3. Mục đích khai báo biến
  4. Cú pháp khai báo biến trong VBA
  5. Kiểu dữ liệu biến trong VBA
  6. Ví dụ về khai báo biến có kiểu dữ liệu

1. Biến trong VBA là gì ?

Biến là một vùng bộ nhớ được máy tính cấp phát cho phần mềm bạn đang lập trình.

Biến là một phần tử dùng để lưu trữ giá trị trong bộ nhớ khi chương trình đang chạy. Biến giúp chương trình lưu trữ và xử lý thông tin, chẳng hạn như số, chuỗi văn bản, hoặc các đối tượng.


Ví dụ đoạn lệnh vba khai báo biến: 
 Dim ten as String
 Dòng trên chính là đoạn code khai báo biến ten trong bộ nhớ

2. Máy tính sẽ làm gì khai chạy qua đoạn lệnh khai báo biến

Phân bổ bộ nhớ đó nằm ở vị trí nào đó trong RAM

    Máy tính sẽ dành ra một phần bộ nhớ để lưu trữ giá trị của biến.
    Kích thước bộ nhớ phụ thuộc vào độ dài và kiểu biến

Gán tên biến vào địa chỉ bộ nhớ

    Tên biến sẽ được liên kết với địa chỉ bộ nhớ cụ thể. Điều này giúp chương trình truy cập giá trị biến thông qua tên.
    Ví dụ: ta khai báo biến ten, biến ten sẽ gắn vào vị trí địa chỉ bộ nhớ 0x1A2C. 

nguyên lý cấp phát bộ nhớ RAM cho ứng dụng lập trình

3. Mục đích khai báo biến

  Để tính toán, lưu trữ tạm thời trong quá trình hoạt động của phần mềm.

  Ví dụ: 1 phần mềm tính tổng 2 số (mình lấy ví dụ dễ nhất nhé)
 


  Dim a as integer
  Dim a as integer
  Dim tong as  integer
  a=4
  b=5
  tong= a+b


  // Ghê chưa, phần mềm chỉ làm đơn giản là cộng tổng 2 số

  Với ví dụ trên bạn thấy chỉ khai báo biến rồi lưu trữ cất đó , vậy đâu có ý nghĩa gì ?

  Một ví cơ bản nhất là in biến đó ra cho người dùng xem.
  Msgbox tong
  Khi chạy qua đoạn lệnh msgbox tong thì ứng dụng VBA sẽ lục tìm trong RAM biến tổng ở đâu và lấy giá trị in ra.

 

4. Cú pháp khai báo biến trong VBA

Dim so as Integer
* so là tên biến, Integer là kiểu dữ liệu của biến so.

so=10
Lệnh trên là ta gán giá trị cho biến so với giá trị là 10.

Rút ra quy tắt khai báo biến trong VBA là

Dim so as Integer

Dim as là 2 từ khóa cố định, ta không thể gõ khác.

so là tên biến, gõ tùy thích.

Integer là kiểu biến số nguyên, ta có thể đổi lại kiểu biến khác tùy vào yêu cầu phần mềm, tham khảo biểu biến bên dưới.

5. Kiểu dữ liệu biến trong VBA

Bảng dưới đây thể hiển các kiểu dữ liệu của biến được hỗ trợ trong VBA, bao gồm kích thước lưu trữ và vùng giá trị.

Kiểu giá trị Kích thước Vùng giá trị
Byte 1 byte 0 to 255
Boolean 2 bytes True hoặc False
Integer 2 bytes -32,768 tới 32,767
Long 4 bytes -2,147,483,648 tới 2,147,483,647
LongLong 8 bytes -9,223,372,036,854,775,808 tới 9,223,372,036,854,775,807 (Chỉ hợp lệ trên hệ thống 64-bit.)
LongPtr 4 bytes trên hệ thống 32-bit,
8 bytes trên hệ thống 64-bit
-2,147,483,648 tới 2,147,483,647 trên hệ thống 32-bit,
-9,223,372,036,854,775,808 tới 9,223,372,036,854,775,807 trên hệ thống 64-bit
Single 4 bytes -3.402823E38 tới -1.401298E-45 cho các giá trị âm;
1.401298E-45 tới 3.402823E38 cho các giá trị dương
Double 8 bytes -1.79769313486231E308 tới -4.94065645841247E-324 cho các giá trị âm;
4.94065645841247E-324 tới 1.79769313486232E308 cho các giá trị dương
Currency 8 bytes -922,337,203,685,477.5808 tới 922,337,203,685,477.5807
Decimal 14 bytes +/-79,228,162,514,264,337,593,543,950,335 với số không có dấu phảy động (.);
+/-7.9228162514264337593543950335 với 28 ký tự bên phải sau dấu thập phân;
số nhỏ nhất non-zero +/-0.0000000000000000000000000001
Date 8 bytes January 1, 100 tới December 31, 9999
Object 4 bytes Bất kỳ đối tượng tham chiếu
String (độ dài thay đổi) 10 bytes + string length 0 tới xấp xỉ 2 tỉ
String (độ dài cố định) Độ dài của String 1 tới xấp xỉ 65,400
Variant (kiểu số) 16 bytes Bất kỳ giá trị số nào
Variant (kiểu ký tự) 22 bytes + độ dài của chuỗi ký tự (24 bytes trên hệ thống 64-bit) Giống như String có đội d

Tại sao lại quan tâm kiểu biến trong VBA ? đó NHANH, biểu sâu thêm các bài tiếp theo.

6. Ví dụ về kiểu dữ liệu biến trong VBA

Khai báo kiểu biến Integer (Số nguyên)

Dim age As Integer
age = 25

    Integer là kiểu dữ liệu để lưu trữ các số nguyên trong phạm vi từ -32,768 đến 32,767.

Khai báo kiểu biến Long (Số nguyên dài)

Dim tongDanSoToanCau As Long
tongDanSoToanCau = 7000000000 ' Số dân toàn cầu

    Long là kiểu dữ liệu dùng để lưu trữ các số nguyên có giá trị lớn hơn phạm vi của kiểu Integer.

Khai báo kiểu biến Double (Số thực)

Dim pi As Double
pi = 3.14159

    Double là kiểu dữ liệu dùng để lưu trữ số thực có độ chính xác cao (tương đương với số thập phân).

Khai báo kiểu biến String (Chuỗi văn bản)

Dim monhoc As String
monhoc = "Lap trinh app web"

    String là kiểu dữ liệu dùng để lưu trữ chuỗi văn bản.

Khai báo kiểu biến Boolean (Kiểu logic)

Dim KichHoat As Boolean
KichHoat = True

    Boolean là kiểu dữ liệu dùng để lưu trữ các giá trị logic, chỉ có 2 giá trị là True hoặc False.

Khai báo kiểu biến Variant (Biến có thể chứa bất kỳ loại dữ liệu nào)

Dim value As Variant
value = "Hello"
value = 123
value = True

    Variant là kiểu dữ liệu đặc biệt trong VBA, có thể chứa bất kỳ loại dữ liệu nào (chuỗi, số, Boolean, v.v.). Tuy nhiên, việc sử dụng Variant làm giảm hiệu quả và khả năng tối ưu hóa, nên thường chỉ sử dụng khi thật sự cần thiết.

Khai báo kiểu biến Date (Ngày tháng)

Dim currentDate As Date
currentDate = #12/31/2024#

    Date là kiểu dữ liệu dùng để lưu trữ giá trị ngày tháng.

Khai báo kiểu biến Object (Đối tượng)

Dim obj As Object
Set obj = CreateObject("Scripting.FileSystemObject")

Ở mức cơ bản bạn chỉ cần hiểu cách khai báo biến, đi sâu vào bên trong mình sẽ chi tiết thêm.

 Tìm kiếm: bien trong vba la gi ?;muc dich khai bao bien;cu phap khai bao bien trong vba;kieu du lieu bien trong vba;

Bài viết liên quan:

Biến và kiểu dữ liệu trong VBA Access giúp bạn học lập trình cơ bản tốt hơn