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ớ
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
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.
Để 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
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.
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 và 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.
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.
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.
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.
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).
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.
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.
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.
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.
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;
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