Các loại biến VBA - Làm thế nào để xác định biến & chỉ định kiểu dữ liệu?

Các loại biến VBA trong Excel

Biến VBA giống như một địa chỉ để lưu trữ dữ liệu và dữ liệu có thể ở nhiều dạng như số hoặc chuỗi hoặc ký tự, v.v. vì vậy, làm thế nào để mã biết giá trị hoặc dữ liệu được lưu trữ trong biến nào, điều này được thực hiện bởi các loại biến khác nhau hoặc còn được gọi là kiểu dữ liệu được sử dụng để lưu trữ dữ liệu theo từng kiểu, ví dụ: kiểu biến chuỗi sẽ lưu trữ giá trị chuỗi trong khi kiểu dữ liệu số nguyên sẽ lưu trữ giá trị nguyên, v.v.

Để viết mã hiệu quả, việc khai báo biến và gán kiểu dữ liệu cho các biến đã khai báo đó là chìa khóa để đi một chặng đường dài trong mã hóa VBA. Trong bài viết này, chúng tôi sẽ giới thiệu cho bạn biết biến là gì, kiểu dữ liệu là gì và cách gán kiểu dữ liệu cho các biến đó.

Như chính cái tên đã nói, biến sẽ thay đổi theo thời gian và chúng tôi lưu trữ một số giá trị vào các biến đó. Để hiểu rõ hơn điều này, chúng ta hãy nhớ các lớp “toán học” của chúng ta, nơi chúng ta giả định biến “x = something”, vì vậy bất cứ khi nào chúng ta sử dụng biến “x”, nó sẽ bằng giá trị mà chúng ta đã gán.

Kiểu dữ liệu là gì?

Kiểu dữ liệu là hạn chế mà chúng tôi áp dụng cho biến. Ví dụ: đối với biến đã khai báo, chúng tôi có thể hạn chế chỉ giữ “Giá trị ngày”, “Giá trị nguyên”, “Giá trị dài”, “Giá trị chuỗi”, v.v.…

Loại dữ liệu mà một biến có thể giữ được gọi là "Kiểu dữ liệu" trong VBA.

Nó có nhiều loại. Trong mã hóa, điều quan trọng là phải hiểu từng loại dữ liệu có thể chứa những gì. Chúng ta có thể phân loại các kiểu dữ liệu theo hai cách, tức là

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

Các kiểu dữ liệu này chỉ có thể chứa dữ liệu phi số. Đây là các kiểu dữ liệu không phải số phổ biến, tức là Chuỗi, Boolean, Biến thể, Đối tượng.

  • Chuỗi: Điều này có thể chứa hai loại giá trị chuỗi trong đó, tức là Chuỗi có độ dài cố định và chuỗi có độ dài thay đổi.
  • Boolean: Boolean trong VBA là các giá trị logic, tức là TRUE hoặc FALSE.
  • Biến thể: Nó có thể chứa cả dữ liệu số và không phải số.
  • Đối tượng: Biến đối tượng là sản phẩm của Microsoft. Ví dụ, trong excel, các đối tượng là "Trang tính, Sổ làm việc, Phạm vi." Đối tượng Microsoft là “MS Word, MS PowerPoint và MS Outlook.”

# 2 - Các kiểu dữ liệu số

Các kiểu dữ liệu này chỉ có thể chứa dữ liệu số. Dưới đây là các kiểu dữ liệu số, tức là Byte, Integer, Long, Single, Double, Date, Currency, Decimal.

  • Byte: Đây là một biến dung lượng nhỏ mà biến được khai báo có thể giữ các giá trị từ 0 đến 255.
  • Số nguyên: Đây là phiên bản cải tiến của kiểu dữ liệu Byte. Điều này có thể giữ các giá trị từ -32768 đến 32768. Nếu bất kỳ giá trị thập phân nào được gán, thì nó sẽ chuyển đổi thành giá trị số nguyên gần nhất. Ví dụ: 5,55 sẽ được chuyển đổi thành 6 và 5,49 sẽ được chuyển đổi thành 5.
  • Dài: Trong đó các kiểu dữ liệu Số nguyên giới hạn giá trị của nó ở 32768 DÀI có thể chứa các số rất dài từ -2,147,483,648 đến 2,147,483,648.
  • Đơn: Kiểu dữ liệu đơn có thể chứa hai chữ số thập phân -3.402823E + 38 đến -1.401298E-45 cho giá trị âm và 1,401298E-45 đến 3,402823E + 38 cho giá trị dương.
  • Double: Kiểu dữ liệu kép có thể chứa nhiều hơn hai chữ số thập phân tức là tối đa 14 chữ số thập phân. -1,79769313486232e + 308 đến -4,94065645841247E-324 cho giá trị âm và 4,94065645841247E-324 đến 1,79769313486232e + 308 cho giá trị dương.
  • Ngày: Kiểu dữ liệu này chỉ có thể chứa các giá trị DATE.
  • Tiền tệ: Loại dữ liệu này có thể chứa các giá trị từ -922.337.203.685.477.5808 đến 922.337.203.685.477.5807.
  • Thập phân: Kiểu dữ liệu thập phân có thể chứa tới 28 vị trí thập phân. Nó có thể giữ từ +/- 79,228,162,514,264,337,593,543,950,335 nếu không có số thập phân nào được sử dụng +/- 7,9228162514264337593543950335.

Làm thế nào để xác định biến và gán kiểu dữ liệu trong VBA?

Điều quan trọng nhất cần biết là xác định biến trong quá trình mã hóa. Chúng ta có thể xác định các kiểu biến theo hai cách khác nhau, tức là, ngầm định và rõ ràng .

# 1 - Ngụ ý

Chúng ta có thể khai báo biến VBA một cách ngầm định, tức là không sử dụng từ “DIM”. Dim là viết tắt của “Dimension”. Ví dụ, hãy nhìn vào hình ảnh dưới đây.

Mã:

Sub Data_Type () k = 45 End Sub

# 2 - Rõ ràng

Đây là một cách thích hợp để khai báo một biến. Tôi sẽ gọi nó là một cách chính thức và chuyên nghiệp. Để khai báo một biến, chúng ta phải sử dụng từ “DIM” và gán một kiểu dữ liệu cho biến.

Mã:

Sub Data_Type () Dim k As Integer k = 45 End Sub

Chúng tôi đã xác định biến “k” như bạn có thể thấy trong hình trên và gán kiểu dữ liệu là “Số nguyên”.

Quy tắc xác định biến

  • Biến không được chứa bất kỳ ký tự khoảng trắng nào.
  • Biến không được chứa bất kỳ ký tự đặc biệt nào ngoại trừ “dấu gạch dưới” (_)
  • Biến không được bắt đầu bằng ký tự số.
  • Biến không được chứa trực tiếp bất kỳ từ khóa VBA nào.

Ví dụ

Ví dụ 1

Để xác định bất kỳ biến nào, trước tiên chúng ta cần sử dụng từ “Dim” và theo sau là tên biến.

Mã:

Sub Data_Type () Dim var End Sub

Tiếp theo, khi tên biến được cung cấp, chúng ta cần gán một kiểu dữ liệu. Như chúng ta đã thảo luận ở trên, chúng ta có thể gán bất kỳ kiểu dữ liệu nào.

Mã:

Sub Data_Type () Dim var As Integer End Sub

Tôi đã chỉ định kiểu dữ liệu là Số nguyên. Vì vậy, bây giờ bạn cần nhớ các hạn chế của biến Integer, tức là nó có thể giữ các giá trị trong khoảng từ -32768 đến 32768.

Mã:

Sub Data_Type () Dim var As Integer var = 25000 End Sub

Trong hình trên, tôi đã gán 25000, trong tầm với, nhưng thời điểm bạn nhập giá trị nhiều hơn giới hạn, nó sẽ gây ra lỗi tràn trong VBA.

Mã:

Sub Data_Type () Dim var As Integer var = 35000 End Sub

Bây giờ bạn có thể chạy mã này bằng phím tắt F5 hoặc theo cách thủ công để xem kết quả.

Tràn không là gì ngoài giá trị được gán của kiểu dữ liệu lớn hơn dung lượng của nó.

Ví dụ số 2

Tương tự, chúng ta cũng không thể gán các giá trị khác nhau. Ví dụ, chúng tôi không thể gán giá trị "Chuỗi" cho biến kiểu dữ liệu số nguyên. Nếu được chỉ định, chúng tôi sẽ nhận được “Lỗi loại không khớp”.

Mã:

Sub Data_Type1 () Dim var As Integer var = "Hii" End Sub

Bây giờ chạy mã này thông qua phím tắt F5 hoặc theo cách thủ công, để xem kết quả.

Những điều cần ghi nhớ

  • Luôn sử dụng từ DIM để xác định biến.
  • Trước khi gán kiểu dữ liệu, hãy đảm bảo bạn sẽ lưu trữ kiểu dữ liệu nào trong đó.
  • Việc gán nhiều hơn giá trị dung lượng cho kiểu dữ liệu gây ra lỗi tràn và việc gán một giá trị khác cho kiểu dữ liệu gây ra “Lỗi kiểu không khớp”.

thú vị bài viết...